Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 package org.chromium.chrome.browser.preferences.password; | 5 package org.chromium.chrome.browser.preferences.password; |
| 6 | 6 |
| 7 import android.test.suitebuilder.annotation.SmallTest; | 7 import android.test.suitebuilder.annotation.SmallTest; |
| 8 | 8 |
| 9 import org.chromium.base.CommandLine; | |
| 10 import org.chromium.base.ThreadUtils; | 9 import org.chromium.base.ThreadUtils; |
| 11 import org.chromium.base.test.util.Feature; | 10 import org.chromium.base.test.util.Feature; |
| 11 import org.chromium.chrome.browser.ChromeFeatureList; | |
| 12 import org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference; | 12 import org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference; |
| 13 import org.chromium.chrome.browser.preferences.ChromeSwitchPreference; | 13 import org.chromium.chrome.browser.preferences.ChromeSwitchPreference; |
| 14 import org.chromium.chrome.browser.preferences.PrefServiceBridge; | 14 import org.chromium.chrome.browser.preferences.PrefServiceBridge; |
| 15 import org.chromium.chrome.browser.preferences.Preferences; | 15 import org.chromium.chrome.browser.preferences.Preferences; |
| 16 import org.chromium.chrome.browser.preferences.PreferencesTest; | 16 import org.chromium.chrome.browser.preferences.PreferencesTest; |
| 17 import org.chromium.content.browser.test.NativeLibraryTestBase; | 17 import org.chromium.content.browser.test.NativeLibraryTestBase; |
| 18 import org.chromium.content.common.ContentSwitches; | |
| 19 | 18 |
| 20 /** | 19 /** |
| 21 * Tests for the "Save Passwords" settings screen. | 20 * Tests for the "Save Passwords" settings screen. |
| 22 */ | 21 */ |
| 23 public class SavePasswordsPreferencesTest extends NativeLibraryTestBase { | 22 public class SavePasswordsPreferencesTest extends NativeLibraryTestBase { |
| 24 | 23 |
| 24 private static final String ENABLE_CREDENTIAL_MANAGER_API = "CredentialManag ementAPI"; | |
|
Bernhard Bauer
2016/04/13 14:23:01
Declaring this constant multiple times defeats the
melandory
2016/04/14 11:23:01
I haven't fount the right place where to put it. D
Bernhard Bauer
2016/04/14 11:27:38
It's not a switch.
Can you just use the one from
| |
| 25 | |
| 25 @Override | 26 @Override |
| 26 protected void setUp() throws Exception { | 27 protected void setUp() throws Exception { |
| 27 super.setUp(); | 28 super.setUp(); |
| 28 CommandLine.getInstance().appendSwitch(ContentSwitches.ENABLE_CREDENTIAL _MANAGER_API); | |
| 29 loadNativeLibraryAndInitBrowserProcess(); | 29 loadNativeLibraryAndInitBrowserProcess(); |
| 30 } | 30 } |
| 31 | 31 |
| 32 /** | 32 /** |
| 33 * Ensure that the on/off switch in "Save Passwords" settings actually enabl es and disables | 33 * Ensure that the on/off switch in "Save Passwords" settings actually enabl es and disables |
| 34 * password saving. | 34 * password saving. |
| 35 */ | 35 */ |
| 36 @SmallTest | 36 @SmallTest |
| 37 @Feature({"Preferences"}) | 37 @Feature({"Preferences"}) |
| 38 public void testSavePasswordsSwitch() throws Exception { | 38 public void testSavePasswordsSwitch() throws Exception { |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 95 PrefServiceBridge.getInstance().setPasswordManagerAutoSigninEnab led(true); | 95 PrefServiceBridge.getInstance().setPasswordManagerAutoSigninEnab led(true); |
| 96 } | 96 } |
| 97 }); | 97 }); |
| 98 | 98 |
| 99 final Preferences preferences = PreferencesTest.startPreferences( | 99 final Preferences preferences = PreferencesTest.startPreferences( |
| 100 getInstrumentation(), SavePasswordsPreferences.class.getName()); | 100 getInstrumentation(), SavePasswordsPreferences.class.getName()); |
| 101 | 101 |
| 102 ThreadUtils.runOnUiThreadBlocking(new Runnable() { | 102 ThreadUtils.runOnUiThreadBlocking(new Runnable() { |
| 103 @Override | 103 @Override |
| 104 public void run() { | 104 public void run() { |
| 105 assertTrue(CommandLine.getInstance().hasSwitch( | 105 if (!ChromeFeatureList.isEnabled(ENABLE_CREDENTIAL_MANAGER_API)) { |
|
Bernhard Bauer
2016/04/13 14:23:01
Wouldn't it be a better idea to force-enable this
Bernhard Bauer
2016/04/13 14:26:31
So, it turns out there is already @CommandLineFlag
| |
| 106 ContentSwitches.ENABLE_CREDENTIAL_MANAGER_API)); | 106 return; |
| 107 } | |
| 107 SavePasswordsPreferences passwordPrefs = | 108 SavePasswordsPreferences passwordPrefs = |
| 108 (SavePasswordsPreferences) preferences.getFragmentForTes t(); | 109 (SavePasswordsPreferences) preferences.getFragmentForTes t(); |
| 109 ChromeBaseCheckBoxPreference onOffSwitch = | 110 ChromeBaseCheckBoxPreference onOffSwitch = |
| 110 (ChromeBaseCheckBoxPreference) passwordPrefs.findPrefere nce( | 111 (ChromeBaseCheckBoxPreference) passwordPrefs.findPrefere nce( |
| 111 SavePasswordsPreferences.PREF_AUTOSIGNIN_SWITCH) ; | 112 SavePasswordsPreferences.PREF_AUTOSIGNIN_SWITCH) ; |
| 112 assertTrue(onOffSwitch.isChecked()); | 113 assertTrue(onOffSwitch.isChecked()); |
| 113 | 114 |
| 114 PreferencesTest.clickPreference(passwordPrefs, onOffSwitch); | 115 PreferencesTest.clickPreference(passwordPrefs, onOffSwitch); |
| 115 assertFalse(PrefServiceBridge.getInstance().isPasswordManagerAut oSigninEnabled()); | 116 assertFalse(PrefServiceBridge.getInstance().isPasswordManagerAut oSigninEnabled()); |
| 116 PreferencesTest.clickPreference(passwordPrefs, onOffSwitch); | 117 PreferencesTest.clickPreference(passwordPrefs, onOffSwitch); |
| 117 assertTrue(PrefServiceBridge.getInstance().isPasswordManagerAuto SigninEnabled()); | 118 assertTrue(PrefServiceBridge.getInstance().isPasswordManagerAuto SigninEnabled()); |
| 118 | 119 |
| 119 preferences.finish(); | 120 preferences.finish(); |
| 120 | 121 |
| 121 PrefServiceBridge.getInstance().setPasswordManagerAutoSigninEnab led(false); | 122 PrefServiceBridge.getInstance().setPasswordManagerAutoSigninEnab led(false); |
| 122 } | 123 } |
| 123 }); | 124 }); |
| 124 | 125 |
| 125 final Preferences preferences2 = PreferencesTest.startPreferences( | 126 final Preferences preferences2 = PreferencesTest.startPreferences( |
| 126 getInstrumentation(), SavePasswordsPreferences.class.getName()); | 127 getInstrumentation(), SavePasswordsPreferences.class.getName()); |
| 127 ThreadUtils.runOnUiThreadBlocking(new Runnable() { | 128 ThreadUtils.runOnUiThreadBlocking(new Runnable() { |
| 128 @Override | 129 @Override |
| 129 public void run() { | 130 public void run() { |
| 130 assertTrue(CommandLine.getInstance().hasSwitch( | 131 if (!ChromeFeatureList.isEnabled(ENABLE_CREDENTIAL_MANAGER_API)) { |
| 131 ContentSwitches.ENABLE_CREDENTIAL_MANAGER_API)); | 132 return; |
| 133 } | |
| 132 SavePasswordsPreferences passwordPrefs = | 134 SavePasswordsPreferences passwordPrefs = |
| 133 (SavePasswordsPreferences) preferences2.getFragmentForTe st(); | 135 (SavePasswordsPreferences) preferences2.getFragmentForTe st(); |
| 134 ChromeBaseCheckBoxPreference onOffSwitch = | 136 ChromeBaseCheckBoxPreference onOffSwitch = |
| 135 (ChromeBaseCheckBoxPreference) passwordPrefs.findPrefere nce( | 137 (ChromeBaseCheckBoxPreference) passwordPrefs.findPrefere nce( |
| 136 SavePasswordsPreferences.PREF_AUTOSIGNIN_SWITCH) ; | 138 SavePasswordsPreferences.PREF_AUTOSIGNIN_SWITCH) ; |
| 137 assertFalse(onOffSwitch.isChecked()); | 139 assertFalse(onOffSwitch.isChecked()); |
| 138 } | 140 } |
| 139 }); | 141 }); |
| 140 } | 142 } |
| 141 } | 143 } |
| OLD | NEW |