| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/browser/chromeos/policy/device_status_collector.h" | 5 #include "chrome/browser/chromeos/policy/device_status_collector.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 360 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 371 em::DeviceLocation location = status_.device_location(); | 371 em::DeviceLocation location = status_.device_location(); |
| 372 EXPECT_TRUE(location.has_error_code()); | 372 EXPECT_TRUE(location.has_error_code()); |
| 373 EXPECT_EQ(em::DeviceLocation::ERROR_CODE_POSITION_UNAVAILABLE, | 373 EXPECT_EQ(em::DeviceLocation::ERROR_CODE_POSITION_UNAVAILABLE, |
| 374 location.error_code()); | 374 location.error_code()); |
| 375 } | 375 } |
| 376 | 376 |
| 377 void MockRunningKioskApp(const DeviceLocalAccount& account) { | 377 void MockRunningKioskApp(const DeviceLocalAccount& account) { |
| 378 std::vector<DeviceLocalAccount> accounts; | 378 std::vector<DeviceLocalAccount> accounts; |
| 379 accounts.push_back(account); | 379 accounts.push_back(account); |
| 380 SetDeviceLocalAccounts(owner_settings_service_.get(), accounts); | 380 SetDeviceLocalAccounts(owner_settings_service_.get(), accounts); |
| 381 user_manager_->CreateKioskAppUser(account.user_id); | 381 user_manager_->CreateKioskAppUser( |
| 382 AccountId::FromUserEmail(account.user_id)); |
| 382 EXPECT_CALL(*user_manager_, IsLoggedInAsKioskApp()).WillRepeatedly( | 383 EXPECT_CALL(*user_manager_, IsLoggedInAsKioskApp()).WillRepeatedly( |
| 383 Return(true)); | 384 Return(true)); |
| 384 } | 385 } |
| 385 | 386 |
| 386 protected: | 387 protected: |
| 387 // Convenience method. | 388 // Convenience method. |
| 388 int64 ActivePeriodMilliseconds() { | 389 int64 ActivePeriodMilliseconds() { |
| 389 return policy::DeviceStatusCollector::kIdlePollIntervalSeconds * 1000; | 390 return policy::DeviceStatusCollector::kIdlePollIntervalSeconds * 1000; |
| 390 } | 391 } |
| 391 | 392 |
| (...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 765 // Check that after enabling location reporting again, an error is reported | 766 // Check that after enabling location reporting again, an error is reported |
| 766 // if no valid fix is available. | 767 // if no valid fix is available. |
| 767 SetMockPositionToReturnNext(invalid_fix); | 768 SetMockPositionToReturnNext(invalid_fix); |
| 768 settings_helper_.SetBoolean(chromeos::kReportDeviceLocation, true); | 769 settings_helper_.SetBoolean(chromeos::kReportDeviceLocation, true); |
| 769 // Allow the new pref to propagate to the status collector. | 770 // Allow the new pref to propagate to the status collector. |
| 770 message_loop_.RunUntilIdle(); | 771 message_loop_.RunUntilIdle(); |
| 771 CheckThatALocationErrorIsReported(); | 772 CheckThatALocationErrorIsReported(); |
| 772 } | 773 } |
| 773 | 774 |
| 774 TEST_F(DeviceStatusCollectorTest, ReportUsers) { | 775 TEST_F(DeviceStatusCollectorTest, ReportUsers) { |
| 775 user_manager_->CreatePublicAccountUser("public@localhost"); | 776 const AccountId public_user(AccountId::FromUserEmail("public@localhost")); |
| 776 user_manager_->AddUserWithAffiliation("user0@managed.com", true); | 777 const AccountId user0(AccountId::FromUserEmail("user0@managed.com")); |
| 777 user_manager_->AddUserWithAffiliation("user1@managed.com", true); | 778 const AccountId user1(AccountId::FromUserEmail("user1@managed.com")); |
| 778 user_manager_->AddUserWithAffiliation("user2@managed.com", true); | 779 const AccountId user2(AccountId::FromUserEmail("user2@managed.com")); |
| 779 user_manager_->AddUserWithAffiliation("user3@unmanaged.com", false); | 780 const AccountId user3(AccountId::FromUserEmail("user3@unmanaged.com")); |
| 780 user_manager_->AddUserWithAffiliation("user4@managed.com", true); | 781 const AccountId user4(AccountId::FromUserEmail("user4@managed.com")); |
| 781 user_manager_->AddUserWithAffiliation("user5@managed.com", true); | 782 const AccountId user5(AccountId::FromUserEmail("user5@managed.com")); |
| 783 |
| 784 user_manager_->CreatePublicAccountUser(public_user); |
| 785 user_manager_->AddUserWithAffiliation(user0, true); |
| 786 user_manager_->AddUserWithAffiliation(user1, true); |
| 787 user_manager_->AddUserWithAffiliation(user2, true); |
| 788 user_manager_->AddUserWithAffiliation(user3, false); |
| 789 user_manager_->AddUserWithAffiliation(user4, true); |
| 790 user_manager_->AddUserWithAffiliation(user5, true); |
| 782 | 791 |
| 783 // Verify that users are reported by default. | 792 // Verify that users are reported by default. |
| 784 GetStatus(); | 793 GetStatus(); |
| 785 EXPECT_EQ(6, status_.user_size()); | 794 EXPECT_EQ(6, status_.user_size()); |
| 786 | 795 |
| 787 // Verify that users are reported after enabling the setting. | 796 // Verify that users are reported after enabling the setting. |
| 788 settings_helper_.SetBoolean(chromeos::kReportDeviceUsers, true); | 797 settings_helper_.SetBoolean(chromeos::kReportDeviceUsers, true); |
| 789 GetStatus(); | 798 GetStatus(); |
| 790 EXPECT_EQ(6, status_.user_size()); | 799 EXPECT_EQ(6, status_.user_size()); |
| 791 EXPECT_EQ(em::DeviceUser::USER_TYPE_MANAGED, status_.user(0).type()); | 800 EXPECT_EQ(em::DeviceUser::USER_TYPE_MANAGED, status_.user(0).type()); |
| 792 EXPECT_EQ("user0@managed.com", status_.user(0).email()); | 801 EXPECT_EQ(user0.GetUserEmail(), status_.user(0).email()); |
| 793 EXPECT_EQ(em::DeviceUser::USER_TYPE_MANAGED, status_.user(1).type()); | 802 EXPECT_EQ(em::DeviceUser::USER_TYPE_MANAGED, status_.user(1).type()); |
| 794 EXPECT_EQ("user1@managed.com", status_.user(1).email()); | 803 EXPECT_EQ(user1.GetUserEmail(), status_.user(1).email()); |
| 795 EXPECT_EQ(em::DeviceUser::USER_TYPE_MANAGED, status_.user(2).type()); | 804 EXPECT_EQ(em::DeviceUser::USER_TYPE_MANAGED, status_.user(2).type()); |
| 796 EXPECT_EQ("user2@managed.com", status_.user(2).email()); | 805 EXPECT_EQ(user2.GetUserEmail(), status_.user(2).email()); |
| 797 EXPECT_EQ(em::DeviceUser::USER_TYPE_UNMANAGED, status_.user(3).type()); | 806 EXPECT_EQ(em::DeviceUser::USER_TYPE_UNMANAGED, status_.user(3).type()); |
| 798 EXPECT_FALSE(status_.user(3).has_email()); | 807 EXPECT_FALSE(status_.user(3).has_email()); |
| 799 EXPECT_EQ(em::DeviceUser::USER_TYPE_MANAGED, status_.user(4).type()); | 808 EXPECT_EQ(em::DeviceUser::USER_TYPE_MANAGED, status_.user(4).type()); |
| 800 EXPECT_EQ("user4@managed.com", status_.user(4).email()); | 809 EXPECT_EQ(user4.GetUserEmail(), status_.user(4).email()); |
| 801 EXPECT_EQ(em::DeviceUser::USER_TYPE_MANAGED, status_.user(5).type()); | 810 EXPECT_EQ(em::DeviceUser::USER_TYPE_MANAGED, status_.user(5).type()); |
| 802 EXPECT_EQ("user5@managed.com", status_.user(5).email()); | 811 EXPECT_EQ(user5.GetUserEmail(), status_.user(5).email()); |
| 803 | 812 |
| 804 // Verify that users are no longer reported if setting is disabled. | 813 // Verify that users are no longer reported if setting is disabled. |
| 805 settings_helper_.SetBoolean(chromeos::kReportDeviceUsers, false); | 814 settings_helper_.SetBoolean(chromeos::kReportDeviceUsers, false); |
| 806 GetStatus(); | 815 GetStatus(); |
| 807 EXPECT_EQ(0, status_.user_size()); | 816 EXPECT_EQ(0, status_.user_size()); |
| 808 } | 817 } |
| 809 | 818 |
| 810 TEST_F(DeviceStatusCollectorTest, TestVolumeInfo) { | 819 TEST_F(DeviceStatusCollectorTest, TestVolumeInfo) { |
| 811 std::vector<std::string> expected_mount_points; | 820 std::vector<std::string> expected_mount_points; |
| 812 std::vector<em::VolumeInfo> expected_volume_info; | 821 std::vector<em::VolumeInfo> expected_volume_info; |
| (...skipping 473 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1286 | 1295 |
| 1287 // Switch the policy on and verify the interface list is present. | 1296 // Switch the policy on and verify the interface list is present. |
| 1288 settings_helper_.SetBoolean(chromeos::kReportDeviceNetworkInterfaces, true); | 1297 settings_helper_.SetBoolean(chromeos::kReportDeviceNetworkInterfaces, true); |
| 1289 GetStatus(); | 1298 GetStatus(); |
| 1290 | 1299 |
| 1291 VerifyNetworkReporting(); | 1300 VerifyNetworkReporting(); |
| 1292 } | 1301 } |
| 1293 | 1302 |
| 1294 TEST_F(DeviceStatusCollectorNetworkInterfacesTest, ReportIfPublicSession) { | 1303 TEST_F(DeviceStatusCollectorNetworkInterfacesTest, ReportIfPublicSession) { |
| 1295 // Report netowork state for public accounts. | 1304 // Report netowork state for public accounts. |
| 1296 user_manager_->CreatePublicAccountUser(kPublicAccountId); | 1305 user_manager_->CreatePublicAccountUser( |
| 1306 AccountId::FromUserEmail(kPublicAccountId)); |
| 1297 EXPECT_CALL(*user_manager_, IsLoggedInAsPublicAccount()) | 1307 EXPECT_CALL(*user_manager_, IsLoggedInAsPublicAccount()) |
| 1298 .WillRepeatedly(Return(true)); | 1308 .WillRepeatedly(Return(true)); |
| 1299 | 1309 |
| 1300 settings_helper_.SetBoolean(chromeos::kReportDeviceNetworkInterfaces, true); | 1310 settings_helper_.SetBoolean(chromeos::kReportDeviceNetworkInterfaces, true); |
| 1301 GetStatus(); | 1311 GetStatus(); |
| 1302 VerifyNetworkReporting(); | 1312 VerifyNetworkReporting(); |
| 1303 } | 1313 } |
| 1304 | 1314 |
| 1305 } // namespace policy | 1315 } // namespace policy |
| OLD | NEW |