summaryrefslogtreecommitdiffstats
path: root/sql/recovery_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'sql/recovery_unittest.cc')
-rw-r--r--sql/recovery_unittest.cc11
1 files changed, 11 insertions, 0 deletions
diff --git a/sql/recovery_unittest.cc b/sql/recovery_unittest.cc
index f964eb9..11f2a87 100644
--- a/sql/recovery_unittest.cc
+++ b/sql/recovery_unittest.cc
@@ -103,6 +103,17 @@ TEST_F(SQLRecoveryTest, RecoverBasic) {
EXPECT_TRUE(db().is_open());
ASSERT_EQ("", GetSchema(&db()));
+ // Attempting to recover a previously-recovered handle fails early.
+ {
+ scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path());
+ ASSERT_TRUE(recovery.get());
+ recovery.reset();
+
+ recovery = sql::Recovery::Begin(&db(), db_path());
+ ASSERT_FALSE(recovery.get());
+ }
+ ASSERT_TRUE(Reopen());
+
// Recreate the database.
ASSERT_TRUE(db().Execute(kCreateSql));
ASSERT_TRUE(db().Execute(kInsertSql));