diff options
-rw-r--r-- | chrome/browser/safe_browsing/safe_browsing_database_unittest.cc | 31 | ||||
-rw-r--r-- | chrome/browser/sessions/session_service_unittest.cc | 6 |
2 files changed, 27 insertions, 10 deletions
diff --git a/chrome/browser/safe_browsing/safe_browsing_database_unittest.cc b/chrome/browser/safe_browsing/safe_browsing_database_unittest.cc index bea9020..5c4871a 100644 --- a/chrome/browser/safe_browsing/safe_browsing_database_unittest.cc +++ b/chrome/browser/safe_browsing/safe_browsing_database_unittest.cc @@ -14,6 +14,7 @@ #include "base/time.h" #include "chrome/browser/safe_browsing/protocol_parser.h" #include "chrome/browser/safe_browsing/safe_browsing_database.h" +#include "chrome/test/file_test_utils.h" #include "googleurl/src/gurl.h" #include "testing/gtest/include/gtest/gtest.h" #include "testing/platform_test.h" @@ -22,6 +23,8 @@ using base::Time; static const FilePath::CharType kBloomSuffix[] = FILE_PATH_LITERAL(" Bloom"); static const FilePath::CharType kFilterSuffix[] = FILE_PATH_LITERAL(" Filter"); +static const FilePath::CharType kFolderPrefix[] = + FILE_PATH_LITERAL("SafeBrowsingTestDatabase"); namespace { SBPrefix Sha256Prefix(const std::string& str) { @@ -56,16 +59,22 @@ namespace { DelChunk(db, list, chunk_id, true); } + // Creates a new test directory. + FilePath CreateTestDirectory() { + FilePath temp_dir; + EXPECT_TRUE(file_util::CreateNewTempDirectory(kFolderPrefix, &temp_dir)); + return temp_dir; + } + // Common database test set up code. - FilePath GetTestDatabaseName() { - FilePath filename; - PathService::Get(base::DIR_TEMP, &filename); + FilePath GetTestDatabaseName(const FilePath& test_dir) { + FilePath filename(test_dir); filename = filename.AppendASCII("SafeBrowsingTestDatabase"); return filename; } - SafeBrowsingDatabase* SetupTestDatabase() { - FilePath filename = GetTestDatabaseName(); + SafeBrowsingDatabase* SetupTestDatabase(const FilePath& test_dir) { + FilePath filename = GetTestDatabaseName(test_dir); // In case it existed from a previous run. file_util::Delete(FilePath(filename.value() + kBloomSuffix), false); @@ -100,7 +109,8 @@ class SafeBrowsingDatabasePlatformTest : public PlatformTest { // Tests retrieving list name information. TEST_F(SafeBrowsingDatabasePlatformTest, ListName) { - SafeBrowsingDatabase* database = SetupTestDatabase(); + FileAutoDeleter file_deleter(CreateTestDirectory()); + SafeBrowsingDatabase* database = SetupTestDatabase(file_deleter.path()); // Insert some malware add chunks. SBChunkHost host; @@ -240,7 +250,8 @@ TEST_F(SafeBrowsingDatabasePlatformTest, ListName) { // Checks database reading and writing. TEST(SafeBrowsingDatabase, Database) { - SafeBrowsingDatabase* database = SetupTestDatabase(); + FileAutoDeleter file_deleter(CreateTestDirectory()); + SafeBrowsingDatabase* database = SetupTestDatabase(file_deleter.path()); // Add a simple chunk with one hostkey. SBChunkHost host; @@ -577,7 +588,8 @@ TEST(SafeBrowsingDatabase, Database) { // Test adding zero length chunks to the database. TEST(SafeBrowsingDatabase, ZeroSizeChunk) { - SafeBrowsingDatabase* database = SetupTestDatabase(); + FileAutoDeleter file_deleter(CreateTestDirectory()); + SafeBrowsingDatabase* database = SetupTestDatabase(file_deleter.path()); // Populate with a couple of normal chunks. SBChunkHost host; @@ -757,7 +769,8 @@ void PopulateDatabaseForCacheTest(SafeBrowsingDatabase* database) { } TEST(SafeBrowsingDatabase, HashCaching) { - SafeBrowsingDatabase* database = SetupTestDatabase(); + FileAutoDeleter file_deleter(CreateTestDirectory()); + SafeBrowsingDatabase* database = SetupTestDatabase(file_deleter.path()); PopulateDatabaseForCacheTest(database); diff --git a/chrome/browser/sessions/session_service_unittest.cc b/chrome/browser/sessions/session_service_unittest.cc index ba990bb..baafd90 100644 --- a/chrome/browser/sessions/session_service_unittest.cc +++ b/chrome/browser/sessions/session_service_unittest.cc @@ -4,6 +4,7 @@ #include "base/file_util.h" #include "base/path_service.h" +#include "base/scoped_ptr.h" #include "base/scoped_vector.h" #include "base/stl_util-inl.h" #include "base/string_util.h" @@ -14,6 +15,7 @@ #include "chrome/browser/sessions/session_types.h" #include "chrome/browser/tab_contents/navigation_entry.h" #include "chrome/common/chrome_paths.h" +#include "chrome/test/file_test_utils.h" #include "testing/gtest/include/gtest/gtest.h" class SessionServiceTest : public testing::Test { @@ -27,6 +29,7 @@ class SessionServiceTest : public testing::Test { PathService::Get(base::DIR_TEMP, &path_); path_ = path_.Append(FILE_PATH_LITERAL("SessionTestDirs")); file_util::CreateDirectory(path_); + path_deleter_.reset(new FileAutoDeleter(path_)); path_ = path_.AppendASCII(b); SessionService* session_service = new SessionService(path_); @@ -38,7 +41,7 @@ class SessionServiceTest : public testing::Test { virtual void TearDown() { helper_.set_service(NULL); - file_util::Delete(path_, true); + path_deleter_.reset(); } void UpdateNavigation(const SessionID& window_id, @@ -78,6 +81,7 @@ class SessionServiceTest : public testing::Test { // Path used in testing. FilePath path_; + scoped_ptr<FileAutoDeleter> path_deleter_; SessionServiceTestHelper helper_; }; |