| OLD | NEW |
| 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 "chrome/browser/chromeos/policy/recommendation_restorer.h" | 5 #include "chrome/browser/chromeos/policy/recommendation_restorer.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "ash/common/accessibility_types.h" | 10 #include "ash/common/accessibility_types.h" |
| (...skipping 12 matching lines...) Expand all Loading... |
| 23 #include "chrome/test/base/testing_profile.h" | 23 #include "chrome/test/base/testing_profile.h" |
| 24 #include "chrome/test/base/testing_profile_manager.h" | 24 #include "chrome/test/base/testing_profile_manager.h" |
| 25 #include "components/pref_registry/pref_registry_syncable.h" | 25 #include "components/pref_registry/pref_registry_syncable.h" |
| 26 #include "components/prefs/pref_notifier_impl.h" | 26 #include "components/prefs/pref_notifier_impl.h" |
| 27 #include "components/prefs/testing_pref_store.h" | 27 #include "components/prefs/testing_pref_store.h" |
| 28 #include "components/syncable_prefs/pref_service_syncable.h" | 28 #include "components/syncable_prefs/pref_service_syncable.h" |
| 29 #include "components/syncable_prefs/testing_pref_service_syncable.h" | 29 #include "components/syncable_prefs/testing_pref_service_syncable.h" |
| 30 #include "content/public/browser/notification_details.h" | 30 #include "content/public/browser/notification_details.h" |
| 31 #include "content/public/browser/notification_service.h" | 31 #include "content/public/browser/notification_service.h" |
| 32 #include "content/public/browser/notification_source.h" | 32 #include "content/public/browser/notification_source.h" |
| 33 #include "content/public/test/test_browser_thread_bundle.h" |
| 33 #include "extensions/browser/quota_service.h" | 34 #include "extensions/browser/quota_service.h" |
| 34 #include "testing/gtest/include/gtest/gtest.h" | 35 #include "testing/gtest/include/gtest/gtest.h" |
| 35 | 36 |
| 36 namespace policy { | 37 namespace policy { |
| 37 | 38 |
| 38 namespace { | 39 namespace { |
| 39 // The amount of idle time after which recommended values are restored. | 40 // The amount of idle time after which recommended values are restored. |
| 40 const int kRestoreDelayInMs = 60 * 1000; // 1 minute. | 41 const int kRestoreDelayInMs = 60 * 1000; // 1 minute. |
| 41 } // namespace | 42 } // namespace |
| 42 | 43 |
| (...skipping 20 matching lines...) Expand all Loading... |
| 63 const base::Value& expected_value) const; | 64 const base::Value& expected_value) const; |
| 64 void VerifyPrefsFollowUser() const; | 65 void VerifyPrefsFollowUser() const; |
| 65 void VerifyPrefFollowsRecommendation(const char* pref_name, | 66 void VerifyPrefFollowsRecommendation(const char* pref_name, |
| 66 const base::Value& expected_value) const; | 67 const base::Value& expected_value) const; |
| 67 void VerifyPrefsFollowRecommendations() const; | 68 void VerifyPrefsFollowRecommendations() const; |
| 68 | 69 |
| 69 void VerifyNotListeningForNotifications() const; | 70 void VerifyNotListeningForNotifications() const; |
| 70 void VerifyTimerIsStopped() const; | 71 void VerifyTimerIsStopped() const; |
| 71 void VerifyTimerIsRunning() const; | 72 void VerifyTimerIsRunning() const; |
| 72 | 73 |
| 74 content::TestBrowserThreadBundle thread_bundle_; |
| 73 extensions::QuotaService::ScopedDisablePurgeForTesting | 75 extensions::QuotaService::ScopedDisablePurgeForTesting |
| 74 disable_purge_for_testing_; | 76 disable_purge_for_testing_; |
| 75 | 77 |
| 76 TestingPrefStore* recommended_prefs_; // Not owned. | 78 TestingPrefStore* recommended_prefs_; // Not owned. |
| 77 syncable_prefs::TestingPrefServiceSyncable* prefs_; // Not owned. | 79 syncable_prefs::TestingPrefServiceSyncable* prefs_; // Not owned. |
| 78 RecommendationRestorer* restorer_; // Not owned. | 80 RecommendationRestorer* restorer_; // Not owned. |
| 79 | 81 |
| 80 scoped_refptr<base::TestSimpleTaskRunner> runner_; | 82 scoped_refptr<base::TestSimpleTaskRunner> runner_; |
| 81 base::ThreadTaskRunnerHandle runner_handler_; | |
| 82 | 83 |
| 83 private: | 84 private: |
| 84 std::unique_ptr<syncable_prefs::PrefServiceSyncable> prefs_owner_; | 85 std::unique_ptr<syncable_prefs::PrefServiceSyncable> prefs_owner_; |
| 85 | 86 |
| 86 TestingProfileManager profile_manager_; | 87 TestingProfileManager profile_manager_; |
| 87 | 88 |
| 88 DISALLOW_COPY_AND_ASSIGN(RecommendationRestorerTest); | 89 DISALLOW_COPY_AND_ASSIGN(RecommendationRestorerTest); |
| 89 }; | 90 }; |
| 90 | 91 |
| 91 RecommendationRestorerTest::RecommendationRestorerTest() | 92 RecommendationRestorerTest::RecommendationRestorerTest() |
| 92 : recommended_prefs_(new TestingPrefStore), | 93 : recommended_prefs_(new TestingPrefStore), |
| 93 prefs_(new syncable_prefs::TestingPrefServiceSyncable( | 94 prefs_(new syncable_prefs::TestingPrefServiceSyncable( |
| 94 new TestingPrefStore, | 95 new TestingPrefStore, |
| 95 new TestingPrefStore, | 96 new TestingPrefStore, |
| 96 recommended_prefs_, | 97 recommended_prefs_, |
| 97 new user_prefs::PrefRegistrySyncable, | 98 new user_prefs::PrefRegistrySyncable, |
| 98 new PrefNotifierImpl)), | 99 new PrefNotifierImpl)), |
| 99 restorer_(NULL), | 100 restorer_(NULL), |
| 100 runner_(new base::TestSimpleTaskRunner), | 101 runner_(new base::TestSimpleTaskRunner), |
| 101 runner_handler_(runner_), | |
| 102 prefs_owner_(prefs_), | 102 prefs_owner_(prefs_), |
| 103 profile_manager_(TestingBrowserProcess::GetGlobal()) {} | 103 profile_manager_(TestingBrowserProcess::GetGlobal()) {} |
| 104 | 104 |
| 105 void RecommendationRestorerTest::SetUp() { | 105 void RecommendationRestorerTest::SetUp() { |
| 106 testing::Test::SetUp(); | 106 testing::Test::SetUp(); |
| 107 base::MessageLoop::current()->SetTaskRunner(runner_); |
| 107 ASSERT_TRUE(profile_manager_.SetUp()); | 108 ASSERT_TRUE(profile_manager_.SetUp()); |
| 108 } | 109 } |
| 109 | 110 |
| 110 void RecommendationRestorerTest::RegisterUserProfilePrefs() { | 111 void RecommendationRestorerTest::RegisterUserProfilePrefs() { |
| 111 chrome::RegisterUserProfilePrefs(prefs_->registry()); | 112 chrome::RegisterUserProfilePrefs(prefs_->registry()); |
| 112 } | 113 } |
| 113 | 114 |
| 114 void RecommendationRestorerTest::RegisterLoginProfilePrefs() { | 115 void RecommendationRestorerTest::RegisterLoginProfilePrefs() { |
| 115 chrome::RegisterLoginProfilePrefs(prefs_->registry()); | 116 chrome::RegisterLoginProfilePrefs(prefs_->registry()); |
| 116 } | 117 } |
| (...skipping 441 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 558 | 559 |
| 559 // Fast forward until the reset timer fires. | 560 // Fast forward until the reset timer fires. |
| 560 VerifyTimerIsRunning(); | 561 VerifyTimerIsRunning(); |
| 561 runner_->RunUntilIdle(); | 562 runner_->RunUntilIdle(); |
| 562 VerifyPrefFollowsRecommendation(prefs::kAccessibilityLargeCursorEnabled, | 563 VerifyPrefFollowsRecommendation(prefs::kAccessibilityLargeCursorEnabled, |
| 563 base::FundamentalValue(false)); | 564 base::FundamentalValue(false)); |
| 564 VerifyTimerIsStopped(); | 565 VerifyTimerIsStopped(); |
| 565 } | 566 } |
| 566 | 567 |
| 567 } // namespace policy | 568 } // namespace policy |
| OLD | NEW |