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

Side by Side Diff: chrome/browser/policy/device_management_service_unittest.cc

Issue 6840014: Support decoding GenericNamedValue based policy. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix unit test broken by patch set 2 Created 9 years, 8 months 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 (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 <vector> 5 #include <vector>
6 6
7 #include "base/message_loop.h" 7 #include "base/message_loop.h"
8 #include "base/string_split.h" 8 #include "base/string_split.h"
9 #include "chrome/browser/policy/device_management_backend_impl.h" 9 #include "chrome/browser/policy/device_management_backend_impl.h"
10 #include "chrome/browser/policy/device_management_backend_mock.h" 10 #include "chrome/browser/policy/device_management_backend_mock.h"
(...skipping 346 matching lines...) Expand 10 before | Expand all | Expand 10 after
357 ASSERT_TRUE(response_wrapper.SerializeToString(&response_data)); 357 ASSERT_TRUE(response_wrapper.SerializeToString(&response_data));
358 net::URLRequestStatus status(net::URLRequestStatus::SUCCESS, 0); 358 net::URLRequestStatus status(net::URLRequestStatus::SUCCESS, 0);
359 fetcher->delegate()->OnURLFetchComplete(fetcher, 359 fetcher->delegate()->OnURLFetchComplete(fetcher,
360 GURL(kServiceUrl), 360 GURL(kServiceUrl),
361 status, 361 status,
362 200, 362 200,
363 ResponseCookies(), 363 ResponseCookies(),
364 response_data); 364 response_data);
365 } 365 }
366 366
367 TEST_F(DeviceManagementServiceTest, PolicyRequest) {
368 DevicePolicyResponseDelegateMock mock;
369 em::DevicePolicyResponse expected_response;
370 em::DevicePolicySetting* policy_setting = expected_response.add_setting();
371 policy_setting->set_policy_key(kChromeDevicePolicySettingKey);
372 policy_setting->set_watermark("fresh");
373 em::GenericSetting* policy_value = policy_setting->mutable_policy_value();
374 em::GenericNamedValue* named_value = policy_value->add_named_value();
375 named_value->set_name("HomepageLocation");
376 named_value->mutable_value()->set_value_type(
377 em::GenericValue::VALUE_TYPE_STRING);
378 named_value->mutable_value()->set_string_value("http://www.chromium.org");
379 named_value = policy_value->add_named_value();
380 named_value->set_name("HomepageIsNewTabPage");
381 named_value->mutable_value()->set_value_type(
382 em::GenericValue::VALUE_TYPE_BOOL);
383 named_value->mutable_value()->set_bool_value(false);
384 EXPECT_CALL(mock, HandlePolicyResponse(MessageEquals(expected_response)));
385
386 em::DevicePolicyRequest request;
387 request.set_policy_scope(kChromePolicyScope);
388 em::DevicePolicySettingRequest* setting_request =
389 request.add_setting_request();
390 setting_request->set_key(kChromeDevicePolicySettingKey);
391 setting_request->set_watermark("stale");
392 backend_->ProcessPolicyRequest(kDMToken, kDeviceId, request, &mock);
393 TestURLFetcher* fetcher = factory_.GetFetcherByID(0);
394 ASSERT_TRUE(fetcher);
395
396 CheckURLAndQueryParams(fetcher->original_url(),
397 DeviceManagementBackendImpl::kValueRequestPolicy,
398 kDeviceId);
399
400 em::DeviceManagementRequest expected_request_wrapper;
401 expected_request_wrapper.mutable_policy_request()->CopyFrom(request);
402 std::string expected_request_data;
403 ASSERT_TRUE(expected_request_wrapper.SerializeToString(
404 &expected_request_data));
405 EXPECT_EQ(expected_request_data, fetcher->upload_data());
406
407 // Generate the response.
408 std::string response_data;
409 em::DeviceManagementResponse response_wrapper;
410 response_wrapper.set_error(em::DeviceManagementResponse::SUCCESS);
411 response_wrapper.mutable_policy_response()->CopyFrom(expected_response);
412 ASSERT_TRUE(response_wrapper.SerializeToString(&response_data));
413 net::URLRequestStatus status(net::URLRequestStatus::SUCCESS, 0);
414 fetcher->delegate()->OnURLFetchComplete(fetcher,
415 GURL(kServiceUrl),
416 status,
417 200,
418 ResponseCookies(),
419 response_data);
420 }
421
422 TEST_F(DeviceManagementServiceTest, CancelRegisterRequest) { 367 TEST_F(DeviceManagementServiceTest, CancelRegisterRequest) {
423 DeviceRegisterResponseDelegateMock mock; 368 DeviceRegisterResponseDelegateMock mock;
424 EXPECT_CALL(mock, HandleRegisterResponse(_)).Times(0); 369 EXPECT_CALL(mock, HandleRegisterResponse(_)).Times(0);
425 em::DeviceRegisterRequest request; 370 em::DeviceRegisterRequest request;
426 backend_->ProcessRegisterRequest(kAuthToken, kDeviceId, request, &mock); 371 backend_->ProcessRegisterRequest(kAuthToken, kDeviceId, request, &mock);
427 TestURLFetcher* fetcher = factory_.GetFetcherByID(0); 372 TestURLFetcher* fetcher = factory_.GetFetcherByID(0);
428 ASSERT_TRUE(fetcher); 373 ASSERT_TRUE(fetcher);
429 374
430 // There shouldn't be any callbacks. 375 // There shouldn't be any callbacks.
431 backend_.reset(); 376 backend_.reset();
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
532 status, 477 status,
533 500, 478 500,
534 ResponseCookies(), 479 ResponseCookies(),
535 ""); 480 "");
536 481
537 // Backend should have been reset. 482 // Backend should have been reset.
538 EXPECT_FALSE(backend_.get()); 483 EXPECT_FALSE(backend_.get());
539 } 484 }
540 485
541 } // namespace policy 486 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698