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

Side by Side Diff: chrome/android/javatests/src/org/chromium/chrome/browser/preferences/password/SavePasswordsPreferencesTest.java

Issue 1877213003: [Smart Lock, UI] Fix dissapeared Auto-signin setting. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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
OLDNEW
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
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 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698