diff options
Diffstat (limited to 'sql/recovery_unittest.cc')
-rw-r--r-- | sql/recovery_unittest.cc | 11 |
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)); |