summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordhollowa@chromium.org <dhollowa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-16 04:03:57 +0000
committerdhollowa@chromium.org <dhollowa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-16 04:03:57 +0000
commitc4e1cf8cc32fe095137a23e6d895d169982abf10 (patch)
tree117fbe5ffe7a6e5776de41674ea718c85980a0b1
parent5b29e9590a477eb0347236a36c0c34bb6fa2c82d (diff)
downloadchromium_src-c4e1cf8cc32fe095137a23e6d895d169982abf10.zip
chromium_src-c4e1cf8cc32fe095137a23e6d895d169982abf10.tar.gz
chromium_src-c4e1cf8cc32fe095137a23e6d895d169982abf10.tar.bz2
Using Keychain mock in Sync unit tests.
The Encryptor on Mac can now put up blocking UI when access to the system Keychain is requested. This needs to be disabled for unit tests. These tests were missed in r52590. BUG=none TEST=AuthWatcherTest.AuthenticateBadAuthToken, AuthWatcherTest.AuthenticateSuccess, AuthWatcherTest.RenewAuthToken, UserSettingsTest.PersistEmptyToken, UserSettingsTest.PersistNonEmptyToken TBR=stuartmorgan@chromium.org Review URL: http://codereview.chromium.org/2835041 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52607 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/sync/engine/auth_watcher_unittest.cc6
-rw-r--r--chrome/browser/sync/util/user_settings_unittest.cc11
2 files changed, 17 insertions, 0 deletions
diff --git a/chrome/browser/sync/engine/auth_watcher_unittest.cc b/chrome/browser/sync/engine/auth_watcher_unittest.cc
index 66e7ff1..a77a33b 100644
--- a/chrome/browser/sync/engine/auth_watcher_unittest.cc
+++ b/chrome/browser/sync/engine/auth_watcher_unittest.cc
@@ -6,6 +6,7 @@
#include "base/scoped_temp_dir.h"
#include "base/test/test_file_util.h"
#include "base/waitable_event.h"
+#include "chrome/browser/password_manager/encryptor.h"
#include "chrome/browser/sync/engine/all_status.h"
#include "chrome/browser/sync/engine/auth_watcher.h"
#include "chrome/browser/sync/util/user_settings.h"
@@ -85,6 +86,11 @@ class AuthWatcherTest : public testing::Test {
consumer_ready(false, false),
event_produced(false, false) {}
virtual void SetUp() {
+#if defined(OS_MACOSX)
+ // Need to mock the Keychain for unit tests on Mac to avoid possible
+ // blocking UI. |SetAuthTokenForService| uses Encryptor.
+ Encryptor::UseMockKeychain(true);
+#endif
metadb_.SetUp();
connection_.reset(new MockConnectionManager(metadb_.manager(),
metadb_.name()));
diff --git a/chrome/browser/sync/util/user_settings_unittest.cc b/chrome/browser/sync/util/user_settings_unittest.cc
index 236ecab..1b12ef7 100644
--- a/chrome/browser/sync/util/user_settings_unittest.cc
+++ b/chrome/browser/sync/util/user_settings_unittest.cc
@@ -7,6 +7,7 @@
#include "base/file_util.h"
#include "base/scoped_temp_dir.h"
+#include "chrome/browser/password_manager/encryptor.h"
#include "chrome/browser/sync/syncable/directory_manager.h"
#include "chrome/browser/sync/util/user_settings.h"
#include "chrome/common/sqlite_utils.h"
@@ -231,6 +232,11 @@ TEST_F(UserSettingsTest, PersistEmptyToken) {
ASSERT_TRUE(temp_dir.CreateUniqueTempDir());
UserSettings settings;
settings.Init(temp_dir.path().AppendASCII("UserSettings.sqlite3"));
+#if defined(OS_MACOSX)
+ // Need to mock the Keychain for unit tests on Mac to avoid possible
+ // blocking UI. |SetAuthTokenForService| uses Encryptor.
+ Encryptor::UseMockKeychain(true);
+#endif
settings.SetAuthTokenForService("username", "service", "");
std::string username;
std::string token;
@@ -245,6 +251,11 @@ TEST_F(UserSettingsTest, PersistNonEmptyToken) {
ASSERT_TRUE(temp_dir.CreateUniqueTempDir());
UserSettings settings;
settings.Init(temp_dir.path().AppendASCII("UserSettings.sqlite3"));
+#if defined(OS_MACOSX)
+ // Need to mock the Keychain for unit tests on Mac to avoid possible
+ // blocking UI. |SetAuthTokenForService| uses Encryptor.
+ Encryptor::UseMockKeychain(true);
+#endif
settings.SetAuthTokenForService("username", "service", "012345beefbeef");
std::string username;
std::string token;