OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 <ostream> | 5 #include <ostream> |
6 #include <vector> | 6 #include <vector> |
7 | 7 |
8 #include "base/message_loop.h" | 8 #include "base/message_loop.h" |
9 #include "base/string_split.h" | 9 #include "base/string_split.h" |
10 #include "chrome/browser/policy/device_management_backend_impl.h" | 10 #include "chrome/browser/policy/device_management_backend_impl.h" |
(...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
322 DeviceRegisterResponseDelegateMock mock; | 322 DeviceRegisterResponseDelegateMock mock; |
323 em::DeviceRegisterResponse expected_response; | 323 em::DeviceRegisterResponse expected_response; |
324 expected_response.set_device_management_token(kDMToken); | 324 expected_response.set_device_management_token(kDMToken); |
325 EXPECT_CALL(mock, HandleRegisterResponse(MessageEquals(expected_response))); | 325 EXPECT_CALL(mock, HandleRegisterResponse(MessageEquals(expected_response))); |
326 em::DeviceRegisterRequest request; | 326 em::DeviceRegisterRequest request; |
327 backend_->ProcessRegisterRequest(kGaiaAuthToken, kOAuthToken, | 327 backend_->ProcessRegisterRequest(kGaiaAuthToken, kOAuthToken, |
328 kDeviceId, request, &mock); | 328 kDeviceId, request, &mock); |
329 TestURLFetcher* fetcher = factory_.GetFetcherByID(0); | 329 TestURLFetcher* fetcher = factory_.GetFetcherByID(0); |
330 ASSERT_TRUE(fetcher); | 330 ASSERT_TRUE(fetcher); |
331 | 331 |
332 CheckURLAndQueryParams(fetcher->GetOriginalUrl(), | 332 CheckURLAndQueryParams(fetcher->GetOriginalURL(), |
333 DeviceManagementBackendImpl::kValueRequestRegister, | 333 DeviceManagementBackendImpl::kValueRequestRegister, |
334 kDeviceId); | 334 kDeviceId); |
335 | 335 |
336 em::DeviceManagementRequest expected_request_wrapper; | 336 em::DeviceManagementRequest expected_request_wrapper; |
337 expected_request_wrapper.mutable_register_request()->CopyFrom(request); | 337 expected_request_wrapper.mutable_register_request()->CopyFrom(request); |
338 std::string expected_request_data; | 338 std::string expected_request_data; |
339 ASSERT_TRUE(expected_request_wrapper.SerializeToString( | 339 ASSERT_TRUE(expected_request_wrapper.SerializeToString( |
340 &expected_request_data)); | 340 &expected_request_data)); |
341 EXPECT_EQ(expected_request_data, fetcher->upload_data()); | 341 EXPECT_EQ(expected_request_data, fetcher->upload_data()); |
342 | 342 |
(...skipping 13 matching lines...) Expand all Loading... |
356 TEST_F(DeviceManagementServiceTest, UnregisterRequest) { | 356 TEST_F(DeviceManagementServiceTest, UnregisterRequest) { |
357 DeviceUnregisterResponseDelegateMock mock; | 357 DeviceUnregisterResponseDelegateMock mock; |
358 em::DeviceUnregisterResponse expected_response; | 358 em::DeviceUnregisterResponse expected_response; |
359 EXPECT_CALL(mock, HandleUnregisterResponse(MessageEquals(expected_response))); | 359 EXPECT_CALL(mock, HandleUnregisterResponse(MessageEquals(expected_response))); |
360 em::DeviceUnregisterRequest request; | 360 em::DeviceUnregisterRequest request; |
361 backend_->ProcessUnregisterRequest(kDMToken, kDeviceId, request, &mock); | 361 backend_->ProcessUnregisterRequest(kDMToken, kDeviceId, request, &mock); |
362 TestURLFetcher* fetcher = factory_.GetFetcherByID(0); | 362 TestURLFetcher* fetcher = factory_.GetFetcherByID(0); |
363 ASSERT_TRUE(fetcher); | 363 ASSERT_TRUE(fetcher); |
364 | 364 |
365 // Check the data the fetcher received. | 365 // Check the data the fetcher received. |
366 const GURL& request_url(fetcher->GetOriginalUrl()); | 366 const GURL& request_url(fetcher->GetOriginalURL()); |
367 const GURL service_url(kServiceUrl); | 367 const GURL service_url(kServiceUrl); |
368 EXPECT_EQ(service_url.scheme(), request_url.scheme()); | 368 EXPECT_EQ(service_url.scheme(), request_url.scheme()); |
369 EXPECT_EQ(service_url.host(), request_url.host()); | 369 EXPECT_EQ(service_url.host(), request_url.host()); |
370 EXPECT_EQ(service_url.port(), request_url.port()); | 370 EXPECT_EQ(service_url.port(), request_url.port()); |
371 EXPECT_EQ(service_url.path(), request_url.path()); | 371 EXPECT_EQ(service_url.path(), request_url.path()); |
372 | 372 |
373 CheckURLAndQueryParams(fetcher->GetOriginalUrl(), | 373 CheckURLAndQueryParams(fetcher->GetOriginalURL(), |
374 DeviceManagementBackendImpl::kValueRequestUnregister, | 374 DeviceManagementBackendImpl::kValueRequestUnregister, |
375 kDeviceId); | 375 kDeviceId); |
376 | 376 |
377 em::DeviceManagementRequest expected_request_wrapper; | 377 em::DeviceManagementRequest expected_request_wrapper; |
378 expected_request_wrapper.mutable_unregister_request()->CopyFrom(request); | 378 expected_request_wrapper.mutable_unregister_request()->CopyFrom(request); |
379 std::string expected_request_data; | 379 std::string expected_request_data; |
380 ASSERT_TRUE(expected_request_wrapper.SerializeToString( | 380 ASSERT_TRUE(expected_request_wrapper.SerializeToString( |
381 &expected_request_data)); | 381 &expected_request_data)); |
382 EXPECT_EQ(expected_request_data, fetcher->upload_data()); | 382 EXPECT_EQ(expected_request_data, fetcher->upload_data()); |
383 | 383 |
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
521 DeviceRegisterResponseDelegateMock mock; | 521 DeviceRegisterResponseDelegateMock mock; |
522 EXPECT_CALL(mock, HandleRegisterResponse(_)).Times(0); | 522 EXPECT_CALL(mock, HandleRegisterResponse(_)).Times(0); |
523 EXPECT_CALL(mock, OnError(_)).Times(0); | 523 EXPECT_CALL(mock, OnError(_)).Times(0); |
524 | 524 |
525 em::DeviceRegisterRequest request; | 525 em::DeviceRegisterRequest request; |
526 backend_->ProcessRegisterRequest(kGaiaAuthToken, kOAuthToken, | 526 backend_->ProcessRegisterRequest(kGaiaAuthToken, kOAuthToken, |
527 kDeviceId, request, &mock); | 527 kDeviceId, request, &mock); |
528 TestURLFetcher* fetcher = factory_.GetFetcherByID(0); | 528 TestURLFetcher* fetcher = factory_.GetFetcherByID(0); |
529 ASSERT_TRUE(fetcher); | 529 ASSERT_TRUE(fetcher); |
530 EXPECT_TRUE((fetcher->GetLoadFlags() & net::LOAD_BYPASS_PROXY) == 0); | 530 EXPECT_TRUE((fetcher->GetLoadFlags() & net::LOAD_BYPASS_PROXY) == 0); |
531 const GURL original_url(fetcher->GetOriginalUrl()); | 531 const GURL original_url(fetcher->GetOriginalURL()); |
532 const std::string upload_data(fetcher->upload_data()); | 532 const std::string upload_data(fetcher->upload_data()); |
533 | 533 |
534 // Generate a callback with a proxy failure. | 534 // Generate a callback with a proxy failure. |
535 net::URLRequestStatus status(net::URLRequestStatus::FAILED, | 535 net::URLRequestStatus status(net::URLRequestStatus::FAILED, |
536 net::ERR_PROXY_CONNECTION_FAILED); | 536 net::ERR_PROXY_CONNECTION_FAILED); |
537 fetcher->set_url(GURL(kServiceUrl)); | 537 fetcher->set_url(GURL(kServiceUrl)); |
538 fetcher->set_status(status); | 538 fetcher->set_status(status); |
539 fetcher->set_response_code(200); | 539 fetcher->set_response_code(200); |
540 fetcher->delegate()->OnURLFetchComplete(fetcher); | 540 fetcher->delegate()->OnURLFetchComplete(fetcher); |
541 | 541 |
542 // Verify that a new URLFetcher was started that bypasses the proxy. | 542 // Verify that a new URLFetcher was started that bypasses the proxy. |
543 fetcher = factory_.GetFetcherByID(0); | 543 fetcher = factory_.GetFetcherByID(0); |
544 ASSERT_TRUE(fetcher); | 544 ASSERT_TRUE(fetcher); |
545 EXPECT_TRUE(fetcher->GetLoadFlags() & net::LOAD_BYPASS_PROXY); | 545 EXPECT_TRUE(fetcher->GetLoadFlags() & net::LOAD_BYPASS_PROXY); |
546 EXPECT_EQ(original_url, fetcher->GetOriginalUrl()); | 546 EXPECT_EQ(original_url, fetcher->GetOriginalURL()); |
547 EXPECT_EQ(upload_data, fetcher->upload_data()); | 547 EXPECT_EQ(upload_data, fetcher->upload_data()); |
548 } | 548 } |
549 | 549 |
550 TEST_F(DeviceManagementServiceTest, RetryOnBadResponseFromProxy) { | 550 TEST_F(DeviceManagementServiceTest, RetryOnBadResponseFromProxy) { |
551 // Make a request. | 551 // Make a request. |
552 DeviceRegisterResponseDelegateMock mock; | 552 DeviceRegisterResponseDelegateMock mock; |
553 EXPECT_CALL(mock, HandleRegisterResponse(_)).Times(0); | 553 EXPECT_CALL(mock, HandleRegisterResponse(_)).Times(0); |
554 EXPECT_CALL(mock, OnError(_)).Times(0); | 554 EXPECT_CALL(mock, OnError(_)).Times(0); |
555 | 555 |
556 em::DeviceRegisterRequest request; | 556 em::DeviceRegisterRequest request; |
557 backend_->ProcessRegisterRequest(kGaiaAuthToken, kOAuthToken, | 557 backend_->ProcessRegisterRequest(kGaiaAuthToken, kOAuthToken, |
558 kDeviceId, request, &mock); | 558 kDeviceId, request, &mock); |
559 TestURLFetcher* fetcher = factory_.GetFetcherByID(0); | 559 TestURLFetcher* fetcher = factory_.GetFetcherByID(0); |
560 ASSERT_TRUE(fetcher); | 560 ASSERT_TRUE(fetcher); |
561 EXPECT_TRUE((fetcher->GetLoadFlags() & net::LOAD_BYPASS_PROXY) == 0); | 561 EXPECT_TRUE((fetcher->GetLoadFlags() & net::LOAD_BYPASS_PROXY) == 0); |
562 const GURL original_url(fetcher->GetOriginalUrl()); | 562 const GURL original_url(fetcher->GetOriginalURL()); |
563 const std::string upload_data(fetcher->upload_data()); | 563 const std::string upload_data(fetcher->upload_data()); |
564 fetcher->set_was_fetched_via_proxy(true); | 564 fetcher->set_was_fetched_via_proxy(true); |
565 scoped_refptr<net::HttpResponseHeaders> headers; | 565 scoped_refptr<net::HttpResponseHeaders> headers; |
566 headers = new net::HttpResponseHeaders( | 566 headers = new net::HttpResponseHeaders( |
567 "HTTP/1.1 200 OK\0Content-type: bad/type\0\0"); | 567 "HTTP/1.1 200 OK\0Content-type: bad/type\0\0"); |
568 fetcher->set_response_headers(headers); | 568 fetcher->set_response_headers(headers); |
569 | 569 |
570 // Generate a callback with a valid http response, that was generated by | 570 // Generate a callback with a valid http response, that was generated by |
571 // a bad/wrong proxy. | 571 // a bad/wrong proxy. |
572 net::URLRequestStatus status; | 572 net::URLRequestStatus status; |
573 fetcher->set_url(GURL(kServiceUrl)); | 573 fetcher->set_url(GURL(kServiceUrl)); |
574 fetcher->set_status(status); | 574 fetcher->set_status(status); |
575 fetcher->set_response_code(200); | 575 fetcher->set_response_code(200); |
576 fetcher->delegate()->OnURLFetchComplete(fetcher); | 576 fetcher->delegate()->OnURLFetchComplete(fetcher); |
577 | 577 |
578 // Verify that a new URLFetcher was started that bypasses the proxy. | 578 // Verify that a new URLFetcher was started that bypasses the proxy. |
579 fetcher = factory_.GetFetcherByID(0); | 579 fetcher = factory_.GetFetcherByID(0); |
580 ASSERT_TRUE(fetcher); | 580 ASSERT_TRUE(fetcher); |
581 EXPECT_TRUE((fetcher->GetLoadFlags() & net::LOAD_BYPASS_PROXY) != 0); | 581 EXPECT_TRUE((fetcher->GetLoadFlags() & net::LOAD_BYPASS_PROXY) != 0); |
582 EXPECT_EQ(original_url, fetcher->GetOriginalUrl()); | 582 EXPECT_EQ(original_url, fetcher->GetOriginalURL()); |
583 EXPECT_EQ(upload_data, fetcher->upload_data()); | 583 EXPECT_EQ(upload_data, fetcher->upload_data()); |
584 } | 584 } |
585 | 585 |
586 } // namespace policy | 586 } // namespace policy |
OLD | NEW |