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

Side by Side Diff: chrome/browser/ui/webui/local_discovery/local_discovery_ui_browsertest.cc

Issue 60923002: [sync] Allow FakeURLFetcher to return an arbitrary URLRequestStatus (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 7 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "base/basictypes.h" 5 #include "base/basictypes.h"
6 #include "base/bind.h" 6 #include "base/bind.h"
7 #include "base/callback.h" 7 #include "base/callback.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
11 #include "base/message_loop/message_loop.h" 11 #include "base/message_loop/message_loop.h"
12 #include "chrome/browser/local_discovery/test_service_discovery_client.h" 12 #include "chrome/browser/local_discovery/test_service_discovery_client.h"
13 #include "chrome/browser/signin/profile_oauth2_token_service.h" 13 #include "chrome/browser/signin/profile_oauth2_token_service.h"
14 #include "chrome/browser/signin/profile_oauth2_token_service_factory.h" 14 #include "chrome/browser/signin/profile_oauth2_token_service_factory.h"
15 #include "chrome/browser/signin/signin_manager.h" 15 #include "chrome/browser/signin/signin_manager.h"
16 #include "chrome/browser/signin/signin_manager_base.h" 16 #include "chrome/browser/signin/signin_manager_base.h"
17 #include "chrome/browser/signin/signin_manager_factory.h" 17 #include "chrome/browser/signin/signin_manager_factory.h"
18 #include "chrome/browser/ui/webui/local_discovery/local_discovery_ui_handler.h" 18 #include "chrome/browser/ui/webui/local_discovery/local_discovery_ui_handler.h"
19 #include "chrome/common/chrome_switches.h" 19 #include "chrome/common/chrome_switches.h"
20 #include "chrome/common/url_constants.h" 20 #include "chrome/common/url_constants.h"
21 #include "chrome/test/base/ui_test_utils.cc" 21 #include "chrome/test/base/ui_test_utils.cc"
22 #include "chrome/test/base/web_ui_browsertest.h" 22 #include "chrome/test/base/web_ui_browsertest.h"
23 #include "net/http/http_status_code.h" 23 #include "net/http/http_status_code.h"
24 #include "net/url_request/test_url_fetcher_factory.h" 24 #include "net/url_request/test_url_fetcher_factory.h"
25 #include "net/url_request/url_request_status.h"
25 #include "net/url_request/url_request_test_util.h" 26 #include "net/url_request/url_request_test_util.h"
26 27
27 using testing::InvokeWithoutArgs; 28 using testing::InvokeWithoutArgs;
28 using testing::Return; 29 using testing::Return;
29 using testing::AtLeast; 30 using testing::AtLeast;
30 using testing::DoDefault; 31 using testing::DoDefault;
31 using testing::DoAll; 32 using testing::DoAll;
32 using testing::InSequence; 33 using testing::InSequence;
33 using testing::StrictMock; 34 using testing::StrictMock;
34 using testing::AnyNumber; 35 using testing::AnyNumber;
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after
287 288
288 ~MockableFakeURLFetcherCreator() { 289 ~MockableFakeURLFetcherCreator() {
289 } 290 }
290 291
291 MOCK_METHOD1(OnCreateFakeURLFetcher, void(const std::string& url)); 292 MOCK_METHOD1(OnCreateFakeURLFetcher, void(const std::string& url));
292 293
293 scoped_ptr<net::FakeURLFetcher> CreateFakeURLFetcher( 294 scoped_ptr<net::FakeURLFetcher> CreateFakeURLFetcher(
294 const GURL& url, 295 const GURL& url,
295 net::URLFetcherDelegate* delegate, 296 net::URLFetcherDelegate* delegate,
296 const std::string& response_data, 297 const std::string& response_data,
297 net::HttpStatusCode response_code) { 298 net::HttpStatusCode response_code,
299 net::URLRequestStatus::Status status) {
298 OnCreateFakeURLFetcher(url.spec()); 300 OnCreateFakeURLFetcher(url.spec());
299 return scoped_ptr<net::FakeURLFetcher>( 301 return scoped_ptr<net::FakeURLFetcher>(new net::FakeURLFetcher(
300 new net::FakeURLFetcher(url, delegate, response_data, response_code)); 302 url, delegate, response_data, response_code, status));
301 } 303 }
302 304
303 net::FakeURLFetcherFactory::FakeURLFetcherCreator callback() { 305 net::FakeURLFetcherFactory::FakeURLFetcherCreator callback() {
304 return base::Bind(&MockableFakeURLFetcherCreator::CreateFakeURLFetcher, 306 return base::Bind(&MockableFakeURLFetcherCreator::CreateFakeURLFetcher,
305 base::Unretained(this)); 307 base::Unretained(this));
306 } 308 }
307 }; 309 };
308 310
309 class LocalDiscoveryUITest : public WebUIBrowserTest { 311 class LocalDiscoveryUITest : public WebUIBrowserTest {
310 public: 312 public:
(...skipping 19 matching lines...) Expand all
330 332
331 SigninManagerBase* signin_manager = 333 SigninManagerBase* signin_manager =
332 SigninManagerFactory::GetForProfile(browser()->profile()); 334 SigninManagerFactory::GetForProfile(browser()->profile());
333 335
334 DCHECK(signin_manager); 336 DCHECK(signin_manager);
335 signin_manager->SetAuthenticatedUsername(kSampleUser); 337 signin_manager->SetAuthenticatedUsername(kSampleUser);
336 338
337 fake_fetcher_factory().SetFakeResponse( 339 fake_fetcher_factory().SetFakeResponse(
338 GURL(kURLInfo), 340 GURL(kURLInfo),
339 kResponseInfo, 341 kResponseInfo,
340 net::HTTP_OK); 342 net::HTTP_OK,
343 net::URLRequestStatus::SUCCESS);
341 344
342 fake_fetcher_factory().SetFakeResponse( 345 fake_fetcher_factory().SetFakeResponse(
343 GURL(kURLRegisterStart), 346 GURL(kURLRegisterStart),
344 kResponseRegisterStart, 347 kResponseRegisterStart,
345 net::HTTP_OK); 348 net::HTTP_OK,
349 net::URLRequestStatus::SUCCESS);
346 350
347 fake_fetcher_factory().SetFakeResponse( 351 fake_fetcher_factory().SetFakeResponse(
348 GURL(kURLRegisterClaimToken), 352 GURL(kURLRegisterClaimToken),
349 kResponseRegisterClaimTokenNoConfirm, 353 kResponseRegisterClaimTokenNoConfirm,
350 net::HTTP_OK); 354 net::HTTP_OK,
355 net::URLRequestStatus::SUCCESS);
351 356
352 fake_fetcher_factory().SetFakeResponse( 357 fake_fetcher_factory().SetFakeResponse(
353 GURL(kURLCloudPrintConfirm), 358 GURL(kURLCloudPrintConfirm),
354 kResponseCloudPrintConfirm, 359 kResponseCloudPrintConfirm,
355 net::HTTP_OK); 360 net::HTTP_OK,
361 net::URLRequestStatus::SUCCESS);
356 362
357 fake_fetcher_factory().SetFakeResponse( 363 fake_fetcher_factory().SetFakeResponse(
358 GURL(kURLRegisterComplete), 364 GURL(kURLRegisterComplete),
359 kResponseRegisterComplete, 365 kResponseRegisterComplete,
360 net::HTTP_OK); 366 net::HTTP_OK,
367 net::URLRequestStatus::SUCCESS);
361 368
362 fake_fetcher_factory().SetFakeResponse( 369 fake_fetcher_factory().SetFakeResponse(
363 GURL(kURLGaiaToken), 370 GURL(kURLGaiaToken),
364 kResponseGaiaToken, 371 kResponseGaiaToken,
365 net::HTTP_OK); 372 net::HTTP_OK,
373 net::URLRequestStatus::SUCCESS);
366 374
367 EXPECT_CALL(fake_url_fetcher_creator(), OnCreateFakeURLFetcher( 375 EXPECT_CALL(fake_url_fetcher_creator(), OnCreateFakeURLFetcher(
368 kURLGaiaToken)) 376 kURLGaiaToken))
369 .Times(AnyNumber()); 377 .Times(AnyNumber());
370 378
371 ProfileOAuth2TokenService* token_service = 379 ProfileOAuth2TokenService* token_service =
372 ProfileOAuth2TokenServiceFactory::GetForProfile(browser()->profile()); 380 ProfileOAuth2TokenServiceFactory::GetForProfile(browser()->profile());
373 381
374 token_service->UpdateCredentials("user@host.com", "MyFakeToken"); 382 token_service->UpdateCredentials("user@host.com", "MyFakeToken");
375 383
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
475 483
476 EXPECT_TRUE(WebUIBrowserTest::RunJavascriptTest("registerBegin")); 484 EXPECT_TRUE(WebUIBrowserTest::RunJavascriptTest("registerBegin"));
477 485
478 condition_token_claimed.Wait(); 486 condition_token_claimed.Wait();
479 487
480 EXPECT_TRUE(WebUIBrowserTest::RunJavascriptTest("expectPageAdding1")); 488 EXPECT_TRUE(WebUIBrowserTest::RunJavascriptTest("expectPageAdding1"));
481 489
482 fake_fetcher_factory().SetFakeResponse( 490 fake_fetcher_factory().SetFakeResponse(
483 GURL(kURLRegisterClaimToken), 491 GURL(kURLRegisterClaimToken),
484 kResponseRegisterClaimTokenConfirm, 492 kResponseRegisterClaimTokenConfirm,
485 net::HTTP_OK); 493 net::HTTP_OK,
494 net::URLRequestStatus::SUCCESS);
486 495
487 fake_fetcher_factory().SetFakeResponse( 496 fake_fetcher_factory().SetFakeResponse(
488 GURL(kURLInfo), 497 GURL(kURLInfo),
489 kResponseInfoWithID, 498 kResponseInfoWithID,
490 net::HTTP_OK); 499 net::HTTP_OK,
500 net::URLRequestStatus::SUCCESS);
491 501
492 { 502 {
493 InSequence s; 503 InSequence s;
494 EXPECT_CALL(fake_url_fetcher_creator(), OnCreateFakeURLFetcher( 504 EXPECT_CALL(fake_url_fetcher_creator(), OnCreateFakeURLFetcher(
495 kURLRegisterClaimToken)); 505 kURLRegisterClaimToken));
496 EXPECT_CALL(fake_url_fetcher_creator(), OnCreateFakeURLFetcher( 506 EXPECT_CALL(fake_url_fetcher_creator(), OnCreateFakeURLFetcher(
497 kURLCloudPrintConfirm)); 507 kURLCloudPrintConfirm));
498 EXPECT_CALL(fake_url_fetcher_creator(), OnCreateFakeURLFetcher( 508 EXPECT_CALL(fake_url_fetcher_creator(), OnCreateFakeURLFetcher(
499 kURLRegisterComplete)); 509 kURLRegisterComplete));
500 EXPECT_CALL(fake_url_fetcher_creator(), OnCreateFakeURLFetcher(kURLInfo)) 510 EXPECT_CALL(fake_url_fetcher_creator(), OnCreateFakeURLFetcher(kURLInfo))
501 .WillOnce(InvokeWithoutArgs(&condition_token_claimed, 511 .WillOnce(InvokeWithoutArgs(&condition_token_claimed,
502 &TestMessageLoopCondition::Signal)); 512 &TestMessageLoopCondition::Signal));
503 } 513 }
504 514
505 condition_token_claimed.Wait(); 515 condition_token_claimed.Wait();
506 516
507 test_service_discovery_client()->SimulateReceive( 517 test_service_discovery_client()->SimulateReceive(
508 kAnnouncePacketRegistered, sizeof(kAnnouncePacketRegistered)); 518 kAnnouncePacketRegistered, sizeof(kAnnouncePacketRegistered));
509 519
510 base::MessageLoop::current()->RunUntilIdle(); 520 base::MessageLoop::current()->RunUntilIdle();
511 521
512 EXPECT_TRUE(WebUIBrowserTest::RunJavascriptTest("expectRegisterDone")); 522 EXPECT_TRUE(WebUIBrowserTest::RunJavascriptTest("expectRegisterDone"));
513 } 523 }
514 524
515 } // namespace 525 } // namespace
516 526
517 } // namespace local_discovery 527 } // namespace local_discovery
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698