Index: chrome/browser/chromeos/arc/arc_play_store_enabled_preference_handler_unittest.cc |
diff --git a/chrome/browser/chromeos/arc/arc_play_store_enabled_preference_handler_unittest.cc b/chrome/browser/chromeos/arc/arc_play_store_enabled_preference_handler_unittest.cc |
index 154e8dd501fb44a434c93a2cb04ca9d4bdb04f91..9e2513ad05d421fcb2a316f1e62dfbfb55c83606 100644 |
--- a/chrome/browser/chromeos/arc/arc_play_store_enabled_preference_handler_unittest.cc |
+++ b/chrome/browser/chromeos/arc/arc_play_store_enabled_preference_handler_unittest.cc |
@@ -32,12 +32,15 @@ |
namespace arc { |
namespace { |
-class ArcPlayStoreEnabledPreferenceHandlerTest : public testing::Test { |
+class ArcPlayStoreEnabledPreferenceHandlerTest |
+ : public testing::TestWithParam<bool> { |
hidehiko
2017/03/06 05:37:20
Optional: As you skip all test cases, how about po
victorhsieh
2017/03/06 15:46:56
Done. Thanks for catching. Didn't realize there
|
public: |
ArcPlayStoreEnabledPreferenceHandlerTest() |
: user_manager_enabler_(new chromeos::FakeChromeUserManager()) {} |
void SetUp() override { |
+ if (ShouldArcAlwaysStartInTest()) |
+ SetArcAlwaysStartForTesting(); |
chromeos::DBusThreadManager::GetSetterForTesting()->SetSessionManagerClient( |
base::MakeUnique<chromeos::FakeSessionManagerClient>()); |
chromeos::DBusThreadManager::Initialize(); |
@@ -84,6 +87,8 @@ class ArcPlayStoreEnabledPreferenceHandlerTest : public testing::Test { |
} |
private: |
+ bool ShouldArcAlwaysStartInTest() { return GetParam(); } |
+ |
content::TestBrowserThreadBundle thread_bundle_; |
chromeos::ScopedUserManagerEnabler user_manager_enabler_; |
base::ScopedTempDir temp_dir_; |
@@ -94,7 +99,15 @@ class ArcPlayStoreEnabledPreferenceHandlerTest : public testing::Test { |
DISALLOW_COPY_AND_ASSIGN(ArcPlayStoreEnabledPreferenceHandlerTest); |
}; |
-TEST_F(ArcPlayStoreEnabledPreferenceHandlerTest, PrefChangeTriggersService) { |
+INSTANTIATE_TEST_CASE_P(, |
+ ArcPlayStoreEnabledPreferenceHandlerTest, |
+ testing::Bool()); |
+ |
+TEST_P(ArcPlayStoreEnabledPreferenceHandlerTest, PrefChangeTriggersService) { |
+ // TODO(victorhsieh): Implement opt-in and opt-out flow. |
+ if (ShouldArcAlwaysStart()) |
+ return; |
+ |
ASSERT_FALSE(IsArcPlayStoreEnabledForProfile(profile())); |
arc_session_manager()->SetProfile(profile()); |
preference_handler()->Start(); |
@@ -114,8 +127,12 @@ TEST_F(ArcPlayStoreEnabledPreferenceHandlerTest, PrefChangeTriggersService) { |
ASSERT_EQ(ArcSessionManager::State::STOPPED, arc_session_manager()->state()); |
} |
-TEST_F(ArcPlayStoreEnabledPreferenceHandlerTest, |
+TEST_P(ArcPlayStoreEnabledPreferenceHandlerTest, |
PrefChangeTriggersService_Restart) { |
+ // TODO(victorhsieh): Implement opt-in and opt-out flow. |
+ if (ShouldArcAlwaysStart()) |
+ return; |
+ |
// Sets the Google Play Store preference at beginning. |
SetArcPlayStoreEnabledForProfile(profile(), true); |
@@ -134,7 +151,11 @@ TEST_F(ArcPlayStoreEnabledPreferenceHandlerTest, |
arc_session_manager()->state()); |
} |
-TEST_F(ArcPlayStoreEnabledPreferenceHandlerTest, RemoveDataDir_Managed) { |
+TEST_P(ArcPlayStoreEnabledPreferenceHandlerTest, RemoveDataDir_Managed) { |
+ // TODO(victorhsieh): Implement data removal on Persistent ARC. |
+ if (ShouldArcAlwaysStart()) |
+ return; |
+ |
// Set ARC to be managed and disabled. |
profile()->GetTestingPrefService()->SetManagedPref(prefs::kArcEnabled, |
new base::Value(false)); |