summaryrefslogtreecommitdiffstats
path: root/sql/connection_unittest.cc
diff options
context:
space:
mode:
authorshess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-24 05:55:08 +0000
committershess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-24 05:55:08 +0000
commit8d2e39e922347608d78c2260279c3072d03232db (patch)
treecadc844773d447080ace8201412961e665f6407b /sql/connection_unittest.cc
parent8b9211d4e1de4531f7b462625a0a5ceec1d4dcce (diff)
downloadchromium_src-8d2e39e922347608d78c2260279c3072d03232db.zip
chromium_src-8d2e39e922347608d78c2260279c3072d03232db.tar.gz
chromium_src-8d2e39e922347608d78c2260279c3072d03232db.tar.bz2
[sql] Static helper to delete database and all associated files.
Not all of the ad-hoc file_util::Delete() cases handle -journal, and if -wal was added all of them need to be tracked down. BUG=none Review URL: https://chromiumcodereview.appspot.com/17058004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208140 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sql/connection_unittest.cc')
-rw-r--r--sql/connection_unittest.cc15
1 files changed, 15 insertions, 0 deletions
diff --git a/sql/connection_unittest.cc b/sql/connection_unittest.cc
index b43e83c..1afd2dd 100644
--- a/sql/connection_unittest.cc
+++ b/sql/connection_unittest.cc
@@ -411,3 +411,18 @@ TEST_F(SQLConnectionTest, SetTempDirForSQL) {
ASSERT_TRUE(meta_table.Init(&db(), 4, 4));
}
#endif
+
+TEST_F(SQLConnectionTest, Delete) {
+ EXPECT_TRUE(db().Execute("CREATE TABLE x (x)"));
+ db().Close();
+
+ // Should have both a main database file and a journal file because
+ // of journal_mode PERSIST.
+ base::FilePath journal(db_path().value() + FILE_PATH_LITERAL("-journal"));
+ ASSERT_TRUE(file_util::PathExists(db_path()));
+ ASSERT_TRUE(file_util::PathExists(journal));
+
+ sql::Connection::Delete(db_path());
+ EXPECT_FALSE(file_util::PathExists(db_path()));
+ EXPECT_FALSE(file_util::PathExists(journal));
+}