diff options
Diffstat (limited to 'toolkit/crashreporter/google-breakpad/src/common/tests')
3 files changed, 0 insertions, 305 deletions
diff --git a/toolkit/crashreporter/google-breakpad/src/common/tests/auto_tempdir.h b/toolkit/crashreporter/google-breakpad/src/common/tests/auto_tempdir.h deleted file mode 100644 index 1df88db8b..000000000 --- a/toolkit/crashreporter/google-breakpad/src/common/tests/auto_tempdir.h +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright (c) 2011, Google Inc. -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following disclaimer -// in the documentation and/or other materials provided with the -// distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived from -// this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Utility class for creating a temporary directory for unit tests -// that is deleted in the destructor. -#ifndef GOOGLE_BREAKPAD_COMMON_TESTS_AUTO_TEMPDIR -#define GOOGLE_BREAKPAD_COMMON_TESTS_AUTO_TEMPDIR - -#include <dirent.h> -#include <sys/types.h> - -#include <string> - -#include "breakpad_googletest_includes.h" -#include "common/using_std_string.h" - -#if !defined(__ANDROID__) -#define TEMPDIR "/tmp" -#else -#define TEMPDIR "/data/local/tmp" -#include "common/android/testing/mkdtemp.h" -#endif - -namespace google_breakpad { - -class AutoTempDir { - public: - AutoTempDir() { - char temp_dir[] = TEMPDIR "/breakpad.XXXXXX"; - EXPECT_TRUE(mkdtemp(temp_dir) != NULL); - path_.assign(temp_dir); - } - - ~AutoTempDir() { - DeleteRecursively(path_); - } - - const string& path() const { - return path_; - } - - private: - void DeleteRecursively(const string& path) { - // First remove any files in the dir - DIR* dir = opendir(path.c_str()); - if (!dir) - return; - - dirent* entry; - while ((entry = readdir(dir)) != NULL) { - if (strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0) - continue; - string entry_path = path + "/" + entry->d_name; - struct stat stats; - EXPECT_TRUE(lstat(entry_path.c_str(), &stats) == 0); - if (S_ISDIR(stats.st_mode)) - DeleteRecursively(entry_path); - else - EXPECT_TRUE(unlink(entry_path.c_str()) == 0); - } - EXPECT_TRUE(closedir(dir) == 0); - EXPECT_TRUE(rmdir(path.c_str()) == 0); - } - - // prevent copy construction and assignment - AutoTempDir(const AutoTempDir&); - AutoTempDir& operator=(const AutoTempDir&); - - string path_; -}; - -} // namespace google_breakpad - -#endif // GOOGLE_BREAKPAD_COMMON_TESTS_AUTO_TEMPDIR diff --git a/toolkit/crashreporter/google-breakpad/src/common/tests/file_utils.cc b/toolkit/crashreporter/google-breakpad/src/common/tests/file_utils.cc deleted file mode 100644 index 1c041777c..000000000 --- a/toolkit/crashreporter/google-breakpad/src/common/tests/file_utils.cc +++ /dev/null @@ -1,153 +0,0 @@ -// Copyright (c) 2011, Google Inc. -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following disclaimer -// in the documentation and/or other materials provided with the -// distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived from -// this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// file_utils.cc: Implement utility functions for file manipulation. -// See file_utils.h for details. - -#include <fcntl.h> -#include <stdio.h> -#include <string.h> -#include <sys/stat.h> -#include <unistd.h> - -#include "common/linux/eintr_wrapper.h" -#include "common/tests/file_utils.h" - -namespace google_breakpad { - -bool CopyFile(const char* from_path, const char* to_path) { - int infile = HANDLE_EINTR(open(from_path, O_RDONLY)); - if (infile < 0) { - perror("open"); - return false; - } - - int outfile = HANDLE_EINTR(creat(to_path, 0666)); - if (outfile < 0) { - perror("creat"); - if (IGNORE_EINTR(close(infile)) < 0) { - perror("close"); - } - return false; - } - - char buffer[1024]; - bool result = true; - - while (result) { - ssize_t bytes_read = HANDLE_EINTR(read(infile, buffer, sizeof(buffer))); - if (bytes_read < 0) { - perror("read"); - result = false; - break; - } - if (bytes_read == 0) - break; - ssize_t bytes_written_per_read = 0; - do { - ssize_t bytes_written_partial = HANDLE_EINTR(write( - outfile, - &buffer[bytes_written_per_read], - bytes_read - bytes_written_per_read)); - if (bytes_written_partial < 0) { - perror("write"); - result = false; - break; - } - bytes_written_per_read += bytes_written_partial; - } while (bytes_written_per_read < bytes_read); - } - - if (IGNORE_EINTR(close(infile)) == -1) { - perror("close"); - result = false; - } - if (IGNORE_EINTR(close(outfile)) == -1) { - perror("close"); - result = false; - } - - return result; -} - -bool ReadFile(const char* path, void* buffer, ssize_t* buffer_size) { - int fd = HANDLE_EINTR(open(path, O_RDONLY)); - if (fd == -1) { - perror("open"); - return false; - } - - bool ok = true; - if (buffer && buffer_size && *buffer_size > 0) { - memset(buffer, 0, sizeof(*buffer_size)); - *buffer_size = HANDLE_EINTR(read(fd, buffer, *buffer_size)); - if (*buffer_size == -1) { - perror("read"); - ok = false; - } - } - if (IGNORE_EINTR(close(fd)) == -1) { - perror("close"); - ok = false; - } - return ok; -} - -bool WriteFile(const char* path, const void* buffer, size_t buffer_size) { - int fd = HANDLE_EINTR(open(path, O_CREAT | O_TRUNC | O_WRONLY, S_IRWXU)); - if (fd == -1) { - perror("open"); - return false; - } - - bool ok = true; - if (buffer) { - size_t bytes_written_total = 0; - ssize_t bytes_written_partial = 0; - const char* data = reinterpret_cast<const char*>(buffer); - while (bytes_written_total < buffer_size) { - bytes_written_partial = - HANDLE_EINTR(write(fd, data + bytes_written_total, - buffer_size - bytes_written_total)); - if (bytes_written_partial < 0) { - perror("write"); - ok = false; - break; - } - bytes_written_total += bytes_written_partial; - } - } - if (IGNORE_EINTR(close(fd)) == -1) { - perror("close"); - ok = false; - } - return ok; -} - -} // namespace google_breakpad diff --git a/toolkit/crashreporter/google-breakpad/src/common/tests/file_utils.h b/toolkit/crashreporter/google-breakpad/src/common/tests/file_utils.h deleted file mode 100644 index c98a9bfa8..000000000 --- a/toolkit/crashreporter/google-breakpad/src/common/tests/file_utils.h +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright (c) 2011, Google Inc. -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following disclaimer -// in the documentation and/or other materials provided with the -// distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived from -// this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// file_utils.h: Define utility functions for file manipulation, which -// are used for testing. - -#ifndef COMMON_TESTS_FILE_UTILS_H_ -#define COMMON_TESTS_FILE_UTILS_H_ - -namespace google_breakpad { - -// Copies a file from |from_path| to |to_path|. Returns true on success. -bool CopyFile(const char* from_path, const char* to_path); - -// Reads the content of a file at |path| into |buffer|. |buffer_size| specifies -// the size of |buffer| in bytes and returns the number of bytes read from the -// file on success. Returns true on success. -bool ReadFile(const char* path, void* buffer, ssize_t* buffer_size); - -// Writes |buffer_size| bytes of the content in |buffer| to a file at |path|. -// Returns true on success. -bool WriteFile(const char* path, const void* buffer, size_t buffer_size); - -} // namespace google_breakpad - -#endif // COMMON_TESTS_FILE_UTILS_H_ |