diff options
author | zork@google.com <zork@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-04 19:22:57 +0000 |
---|---|---|
committer | zork@google.com <zork@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-04 19:22:57 +0000 |
commit | e349f1a524b0a6ab8edc69c1014bf5b52aa74446 (patch) | |
tree | a8329fbd3dab088dad1301b84bd471d55b8dd832 /chrome/browser/sync/util/user_settings_unittest.cc | |
parent | 41a61cc6e8c27ad71179754cdbdb1ce6bb96e9f1 (diff) | |
download | chromium_src-e349f1a524b0a6ab8edc69c1014bf5b52aa74446.zip chromium_src-e349f1a524b0a6ab8edc69c1014bf5b52aa74446.tar.gz chromium_src-e349f1a524b0a6ab8edc69c1014bf5b52aa74446.tar.bz2 |
Updated user_settings.* to use Chromium's sqlite helper functions.
BUG=none
TEST=Run sync_unit_tests
Review URL: http://codereview.chromium.org/518026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35467 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/sync/util/user_settings_unittest.cc')
-rw-r--r-- | chrome/browser/sync/util/user_settings_unittest.cc | 60 |
1 files changed, 47 insertions, 13 deletions
diff --git a/chrome/browser/sync/util/user_settings_unittest.cc b/chrome/browser/sync/util/user_settings_unittest.cc index 37d9dc3..9f2202f 100644 --- a/chrome/browser/sync/util/user_settings_unittest.cc +++ b/chrome/browser/sync/util/user_settings_unittest.cc @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +#include <limits> #include <string> #include "base/file_util.h" @@ -9,12 +10,17 @@ #include "chrome/browser/sync/syncable/directory_manager.h" #include "chrome/browser/sync/util/character_set_converters.h" #include "chrome/browser/sync/util/user_settings.h" -#include "chrome/browser/sync/util/query_helpers.h" +#include "chrome/common/sqlite_utils.h" #include "testing/gtest/include/gtest/gtest.h" +using browser_sync::APEncode; +using browser_sync::APDecode; +using browser_sync::ExecOrDie; using browser_sync::FilePathToUTF8; using browser_sync::UserSettings; +using std::numeric_limits; + static const FilePath::CharType kV10UserSettingsDB[] = FILE_PATH_LITERAL("Version10Settings.sqlite3"); static const FilePath::CharType kOldStyleSyncDataDB[] = @@ -30,7 +36,7 @@ class UserSettingsTest : public testing::Test { sqlite3* primer_handle = NULL; v10_user_setting_db_path_ = destination_directory.Append(FilePath(kV10UserSettingsDB)); - ASSERT_EQ(SQLITE_OK, SqliteOpen(v10_user_setting_db_path_, &primer_handle)); + ASSERT_EQ(SQLITE_OK, OpenSqliteDb(v10_user_setting_db_path_, &primer_handle)); old_style_sync_data_path_ = destination_directory.Append(FilePath(kOldStyleSyncDataDB)); @@ -46,15 +52,31 @@ class UserSettingsTest : public testing::Test { // Create and populate version table. ExecOrDie(primer_handle, "CREATE TABLE db_version ( version )"); - ExecOrDie(primer_handle, "INSERT INTO db_version values ( ? )", 10); + { + SQLStatement statement; + const char query[] = "INSERT INTO db_version values ( ? )"; + statement.prepare(primer_handle, query); + statement.bind_int(0, 10); + if (SQLITE_DONE != statement.step()) { + LOG(FATAL) << query << "\n" << sqlite3_errmsg(primer_handle); + } + } // Create shares table. ExecOrDie(primer_handle, "CREATE TABLE shares" " (email, share_name, file_name," " PRIMARY KEY(email, share_name) ON CONFLICT REPLACE)"); // Populate a share. - ExecOrDie(primer_handle, "INSERT INTO shares values ( ?, ?, ?)", - "foo@foo.com", "foo@foo.com", - FilePathToUTF8(old_style_sync_data_path_)); + { + SQLStatement statement; + const char query[] = "INSERT INTO shares values ( ?, ?, ? )"; + statement.prepare(primer_handle, query); + statement.bind_string(0, "foo@foo.com"); + statement.bind_string(1, "foo@foo.com"); + statement.bind_string(2, FilePathToUTF8(old_style_sync_data_path_)); + if (SQLITE_DONE != statement.step()) { + LOG(FATAL) << query << "\n" << sqlite3_errmsg(primer_handle); + } + } sqlite3_close(primer_handle); } @@ -86,16 +108,17 @@ TEST_F(UserSettingsTest, MigrateFromV10ToV11) { // Now poke around using sqlite to see if UserSettings migrated properly. sqlite3* handle = NULL; - ASSERT_EQ(SQLITE_OK, SqliteOpen(v10_user_setting_db_path(), &handle)); + ASSERT_EQ(SQLITE_OK, OpenSqliteDb(v10_user_setting_db_path(), &handle)); // Note that we don't use ScopedStatement to avoid closing the sqlite handle // before finalizing the statement. - sqlite3_stmt* version_query = - PrepareQuery(handle, "SELECT version FROM db_version"); - ASSERT_EQ(SQLITE_ROW, sqlite3_step(version_query)); - const int version = sqlite3_column_int(version_query, 0); - EXPECT_EQ(11, version); - sqlite3_finalize(version_query); + { + SQLStatement version_query; + version_query.prepare(handle, "SELECT version FROM db_version"); + ASSERT_EQ(SQLITE_ROW, version_query.step()); + const int version = version_query.column_int(0); + EXPECT_EQ(11, version); + } EXPECT_FALSE(file_util::PathExists(old_style_sync_data_path())); @@ -107,3 +130,14 @@ TEST_F(UserSettingsTest, MigrateFromV10ToV11) { EXPECT_TRUE(sync_data() == contents); sqlite3_close(handle); } + +TEST_F(UserSettingsTest, APEncode) { + string test; + char i; + for (i = numeric_limits<char>::min(); i < numeric_limits<char>::max(); ++i) + test.push_back(i); + test.push_back(i); + const string encoded = APEncode(test); + const string decoded = APDecode(encoded); + ASSERT_EQ(test, decoded); +} |