Chromium Code Reviews| Index: chrome/android/javatests/src/org/chromium/chrome/browser/preferences/website/SiteSettingsPreferencesTest.java |
| diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/preferences/website/SiteSettingsPreferencesTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/preferences/website/SiteSettingsPreferencesTest.java |
| index 047dd81fa5db917c79b1d60339ecae0f64229a64..7425c6fef0a1fa7852b9231d8668d82044767dea 100644 |
| --- a/chrome/android/javatests/src/org/chromium/chrome/browser/preferences/website/SiteSettingsPreferencesTest.java |
| +++ b/chrome/android/javatests/src/org/chromium/chrome/browser/preferences/website/SiteSettingsPreferencesTest.java |
| @@ -123,6 +123,16 @@ public class SiteSettingsPreferencesTest extends ChromeActivityTestCaseBase<Chro |
| return (Preferences) getInstrumentation().startActivitySync(intent); |
| } |
| + private Preferences startSingleWebsitePreferences() { |
| + Bundle fragmentArgs = SingleWebsitePreferences.createFragmentArgsForSite( |
| + TestHttpServerClient.getUrl("")); |
| + Intent intent = PreferencesLauncher.createIntentForSettingsPage( |
| + getInstrumentation().getTargetContext(), |
| + SingleWebsitePreferences.class.getName()); |
| + intent.putExtra(Preferences.EXTRA_SHOW_FRAGMENT_ARGUMENTS, fragmentArgs); |
| + return (Preferences) getInstrumentation().startActivitySync(intent); |
|
Finnur
2015/12/11 17:53:05
I don't quite understand how this test works becau
svaldez
2015/12/11 18:13:10
Those params are created through createFragmentArg
Finnur
2015/12/11 18:29:29
Ah, right, right. Serves me right for making this
|
| + } |
| + |
| private void setCookiesEnabled(final Preferences preferenceActivity, final boolean enabled) { |
| ThreadUtils.runOnUiThreadBlocking(new Runnable() { |
| @Override |
| @@ -254,6 +264,23 @@ public class SiteSettingsPreferencesTest extends ChromeActivityTestCaseBase<Chro |
| preferenceActivity.finish(); |
| } |
| + private void setEnableKeygen(final boolean enabled) { |
| + final Preferences preferenceActivity = startSingleWebsitePreferences(); |
| + |
| + ThreadUtils.runOnUiThreadBlocking(new Runnable() { |
| + @Override |
| + public void run() { |
| + SingleWebsitePreferences websitePreferences = |
| + (SingleWebsitePreferences) preferenceActivity.getFragmentForTest(); |
| + ChromeSwitchPreference keygen = (ChromeSwitchPreference) |
| + websitePreferences.findPreference( |
| + SingleWebsitePreferences.PREF_KEYGEN_PERMISSION); |
| + websitePreferences.onPreferenceChange(keygen, enabled); |
| + } |
| + }); |
| + preferenceActivity.finish(); |
| + } |
| + |
| /** |
| * Tests that disabling cookies turns off the third-party cookie toggle. |
| * @throws Exception |
| @@ -351,6 +378,33 @@ public class SiteSettingsPreferencesTest extends ChromeActivityTestCaseBase<Chro |
| } |
| /** |
| + * Sets Allow Keygen Enabled to be false and make sure it is set correctly. |
| + * @throws Exception |
| + */ |
| + @SmallTest |
| + @Feature({"Preferences"}) |
| + public void testKeygenBlocked() throws Exception { |
| + setEnableKeygen(false); |
| + |
| + |
| + loadUrl(TestHttpServerClient.getUrl("chrome/test/data/android/keygen.html")); |
| + assertEquals("true", runJavaScriptCodeInCurrentTab("didKeygen();")); |
|
Finnur
2015/12/11 17:53:05
Shouldn't this assert check for "false"?
svaldez
2015/12/11 18:13:10
Done.
|
| + } |
| + |
| + /** |
| + * Sets Allow Keygen Enabled to be true and make sure it is set correctly. |
| + * @throws Exception |
| + */ |
| + @SmallTest |
| + @Feature({"Preferences"}) |
| + public void testKeygenNotBlocked() throws Exception { |
| + setEnableKeygen(true); |
| + |
| + loadUrl(TestHttpServerClient.getUrl("chrome/test/data/android/keygen.html")); |
| + assertEquals("true", runJavaScriptCodeInCurrentTab("didKeygen();")); |
| + } |
| + |
| + /** |
| * Sets Allow Camera Enabled to be false and make sure it is set correctly. |
| * @throws Exception |
| */ |