Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(284)

Side by Side Diff: chrome/test/live_sync/live_sync_test.cc

Issue 4096004: PyAuto hooks for Sync in TestingAutomationProvider (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase; Addressing final review comment. Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/test/functional/sync.py ('k') | chrome/test/pyautolib/pyauto.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/test/live_sync/live_sync_test.h" 5 #include "chrome/test/live_sync/live_sync_test.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/message_loop.h" 10 #include "base/message_loop.h"
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 new net::ProxyConfigServiceFixed(proxy_config_)); 79 new net::ProxyConfigServiceFixed(proxy_config_));
80 done_->Signal(); 80 done_->Signal();
81 } 81 }
82 82
83 private: 83 private:
84 base::WaitableEvent* done_; 84 base::WaitableEvent* done_;
85 URLRequestContextGetter* url_request_context_getter_; 85 URLRequestContextGetter* url_request_context_getter_;
86 net::ProxyConfig proxy_config_; 86 net::ProxyConfig proxy_config_;
87 }; 87 };
88 88
89 // This is a our notion of a sync client for automation purposes. It is a helper
90 // class that specializes ProfileSyncServiceHarness, and is used to wait on
91 // various sync operations.
92 class SyncClient : public ProfileSyncServiceHarness {
93 public:
94 SyncClient(Profile* profile,
95 const std::string& username,
96 const std::string& password, int id)
97 : ProfileSyncServiceHarness(profile, username, password, id) {}
98
99 virtual ~SyncClient() {}
100
101 // Indicates that the sync operation being waited on is complete. Overrides
102 // ProfileSyncServiceHarness::SignalStateComplete().
103 virtual void SignalStateComplete() { MessageLoopForUI::current()->Quit(); }
104
105 // Waits until the sync client's status changes. Overrides
106 // ProfileSyncServiceHarness::AwaitStatusChange().
107 virtual void AwaitStatusChange() { ui_test_utils::RunMessageLoop(); }
108
109 private:
110 DISALLOW_COPY_AND_ASSIGN(SyncClient);
111 };
112
113 void LiveSyncTest::SetUp() { 89 void LiveSyncTest::SetUp() {
114 // At this point, the browser hasn't been launched, and no services are 90 // At this point, the browser hasn't been launched, and no services are
115 // available. But we can verify our command line parameters and fail 91 // available. But we can verify our command line parameters and fail
116 // early. 92 // early.
117 CommandLine* cl = CommandLine::ForCurrentProcess(); 93 CommandLine* cl = CommandLine::ForCurrentProcess();
118 if (cl->HasSwitch(switches::kPasswordFileForTest)) { 94 if (cl->HasSwitch(switches::kPasswordFileForTest)) {
119 ReadPasswordFile(); 95 ReadPasswordFile();
120 } else { 96 } else {
121 // Read GAIA credentials from the "--sync-XXX-for-test" command line 97 // Read GAIA credentials from the "--sync-XXX-for-test" command line
122 // parameters. 98 // parameters.
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 LOG(FATAL) << "SetupClients() has already been called."; 174 LOG(FATAL) << "SetupClients() has already been called.";
199 175
200 // Start up a sync test server if one is needed. 176 // Start up a sync test server if one is needed.
201 SetUpTestServerIfRequired(); 177 SetUpTestServerIfRequired();
202 178
203 // Create the required number of sync profiles and clients. 179 // Create the required number of sync profiles and clients.
204 for (int i = 0; i < num_clients_; ++i) { 180 for (int i = 0; i < num_clients_; ++i) {
205 profiles_.push_back(MakeProfile( 181 profiles_.push_back(MakeProfile(
206 StringPrintf(FILE_PATH_LITERAL("Profile%d"), i))); 182 StringPrintf(FILE_PATH_LITERAL("Profile%d"), i)));
207 EXPECT_FALSE(GetProfile(i) == NULL) << "GetProfile(" << i << ") failed."; 183 EXPECT_FALSE(GetProfile(i) == NULL) << "GetProfile(" << i << ") failed.";
208 clients_.push_back(new SyncClient(GetProfile(i), username_, password_, i)); 184 clients_.push_back(
185 new ProfileSyncServiceHarness(GetProfile(i), username_, password_, i));
209 EXPECT_FALSE(GetClient(i) == NULL) << "GetClient(" << i << ") failed."; 186 EXPECT_FALSE(GetClient(i) == NULL) << "GetClient(" << i << ") failed.";
210 } 187 }
211 188
212 // Create the verifier profile. 189 // Create the verifier profile.
213 verifier_.reset(MakeProfile(FILE_PATH_LITERAL("Verifier"))); 190 verifier_.reset(MakeProfile(FILE_PATH_LITERAL("Verifier")));
214 return (verifier_.get() != NULL); 191 return (verifier_.get() != NULL);
215 } 192 }
216 193
217 bool LiveSyncTest::SetupSync() { 194 bool LiveSyncTest::SetupSync() {
218 // Create sync profiles and clients if they haven't already been created. 195 // Create sync profiles and clients if they haven't already been created.
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after
413 const net::ProxyConfig& proxy_config) { 390 const net::ProxyConfig& proxy_config) {
414 base::WaitableEvent done(false, false); 391 base::WaitableEvent done(false, false);
415 BrowserThread::PostTask( 392 BrowserThread::PostTask(
416 BrowserThread::IO, 393 BrowserThread::IO,
417 FROM_HERE, 394 FROM_HERE,
418 new SetProxyConfigTask(&done, 395 new SetProxyConfigTask(&done,
419 context_getter, 396 context_getter,
420 proxy_config)); 397 proxy_config));
421 done.Wait(); 398 done.Wait();
422 } 399 }
OLDNEW
« no previous file with comments | « chrome/test/functional/sync.py ('k') | chrome/test/pyautolib/pyauto.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698