Index: sql/recovery_unittest.cc |
diff --git a/sql/recovery_unittest.cc b/sql/recovery_unittest.cc |
index d3b04b1eb900a888cb955aa5fdfab36a83038c92..b215777560dd55674a828204359d087cfeec8a4f 100644 |
--- a/sql/recovery_unittest.cc |
+++ b/sql/recovery_unittest.cc |
@@ -5,6 +5,8 @@ |
#include "sql/recovery.h" |
#include <stddef.h> |
+ |
+#include <memory> |
#include <string> |
#include <utility> |
@@ -80,7 +82,8 @@ TEST_F(SQLRecoveryTest, RecoverBasic) { |
// If the Recovery handle goes out of scope without being |
// Recovered(), the database is razed. |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery.get()); |
} |
EXPECT_FALSE(db().is_open()); |
@@ -95,7 +98,8 @@ TEST_F(SQLRecoveryTest, RecoverBasic) { |
// Unrecoverable() also razes. |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery.get()); |
sql::Recovery::Unrecoverable(std::move(recovery)); |
@@ -108,7 +112,8 @@ TEST_F(SQLRecoveryTest, RecoverBasic) { |
// Attempting to recover a previously-recovered handle fails early. |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery.get()); |
recovery.reset(); |
@@ -128,7 +133,8 @@ TEST_F(SQLRecoveryTest, RecoverBasic) { |
// Recovered() replaces the original with the "recovered" version. |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery.get()); |
// Create the new version of the table. |
@@ -155,7 +161,8 @@ TEST_F(SQLRecoveryTest, RecoverBasic) { |
// Rollback() discards recovery progress and leaves the database as it was. |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery.get()); |
ASSERT_TRUE(recovery->db()->Execute(kCreateSql)); |
@@ -181,7 +188,8 @@ TEST_F(SQLRecoveryTest, VirtualTable) { |
// Successfully recover the database. |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
// Tables to recover original DB, now at [corrupt]. |
const char kRecoveryCreateSql[] = |
@@ -221,7 +229,7 @@ void RecoveryCallback(sql::Connection* db, const base::FilePath& db_path, |
// Clear the error callback to prevent reentrancy. |
db->reset_error_callback(); |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(db, db_path); |
+ std::unique_ptr<sql::Recovery> recovery = sql::Recovery::Begin(db, db_path); |
ASSERT_TRUE(recovery.get()); |
ASSERT_TRUE(recovery->db()->Execute(create_table)); |
@@ -386,7 +394,8 @@ TEST_F(SQLRecoveryTest, Meta) { |
// Test expected case where everything works. |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
EXPECT_TRUE(recovery->SetupMeta()); |
int version = 0; |
EXPECT_TRUE(recovery->GetMetaVersionNumber(&version)); |
@@ -399,7 +408,8 @@ TEST_F(SQLRecoveryTest, Meta) { |
// Test version row missing. |
EXPECT_TRUE(db().Execute("DELETE FROM meta WHERE key = 'version'")); |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
EXPECT_TRUE(recovery->SetupMeta()); |
int version = 0; |
EXPECT_FALSE(recovery->GetMetaVersionNumber(&version)); |
@@ -414,7 +424,8 @@ TEST_F(SQLRecoveryTest, Meta) { |
{ |
sql::ScopedErrorIgnorer ignore_errors; |
ignore_errors.IgnoreError(SQLITE_CORRUPT); // From virtual table. |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
EXPECT_FALSE(recovery->SetupMeta()); |
ASSERT_TRUE(ignore_errors.CheckIgnoredErrors()); |
} |
@@ -439,7 +450,8 @@ TEST_F(SQLRecoveryTest, AutoRecoverTable) { |
ASSERT_NE(orig_schema, GetSchema(&db())); |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery->db()->Execute(kCreateSql)); |
// Save a copy of the temp db's schema before recovering the table. |
@@ -466,7 +478,8 @@ TEST_F(SQLRecoveryTest, AutoRecoverTable) { |
// Recovery fails if the target table doesn't exist. |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery->db()->Execute(kCreateSql)); |
// TODO(shess): Should this failure implicitly lead to Raze()? |
@@ -523,7 +536,8 @@ TEST_F(SQLRecoveryTest, AutoRecoverTableWithDefault) { |
} |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
// Different default to detect which table provides the default. |
ASSERT_TRUE(recovery->db()->Execute(final_schema.c_str())); |
@@ -560,7 +574,8 @@ TEST_F(SQLRecoveryTest, AutoRecoverTableNullFilter) { |
ASSERT_NE(kOrigSchema, GetSchema(&db())); |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery->db()->Execute(kFinalSchema)); |
size_t rows = 0; |
@@ -599,7 +614,8 @@ TEST_F(SQLRecoveryTest, AutoRecoverTableWithRowid) { |
ASSERT_NE(orig_schema, GetSchema(&db())); |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery->db()->Execute(kCreateSql)); |
size_t rows = 0; |
@@ -644,7 +660,8 @@ TEST_F(SQLRecoveryTest, AutoRecoverTableWithCompoundKey) { |
ASSERT_NE(orig_schema, GetSchema(&db())); |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery->db()->Execute(kCreateSql)); |
size_t rows = 0; |
@@ -690,7 +707,8 @@ TEST_F(SQLRecoveryTest, AutoRecoverTableMissingColumns) { |
// Recover the previous version of the table into the altered version. |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery->db()->Execute(kCreateSql)); |
ASSERT_TRUE(recovery->db()->Execute(kAlterSql)); |
size_t rows = 0; |
@@ -718,7 +736,8 @@ TEST_F(SQLRecoveryTest, Bug387868) { |
ASSERT_TRUE(Reopen()); |
{ |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery.get()); |
// Create the new version of the table. |
@@ -738,7 +757,8 @@ TEST_F(SQLRecoveryTest, Bug387868) { |
// Memory-mapped I/O interacts poorly with I/O errors. Make sure the recovery |
// database doesn't accidentally enable it. |
TEST_F(SQLRecoveryTest, NoMmap) { |
- scoped_ptr<sql::Recovery> recovery = sql::Recovery::Begin(&db(), db_path()); |
+ std::unique_ptr<sql::Recovery> recovery = |
+ sql::Recovery::Begin(&db(), db_path()); |
ASSERT_TRUE(recovery.get()); |
// In the current implementation, the PRAGMA successfully runs with no result |