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

Unified Diff: chrome/test/functional/cookies.py

Issue 10875045: Rewrite the cookies pyauto test as browser tests. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: chrome/test/functional/cookies.py
===================================================================
--- chrome/test/functional/cookies.py (revision 153070)
+++ chrome/test/functional/cookies.py (working copy)
@@ -1,225 +0,0 @@
-#!/usr/bin/env python
-# Copyright (c) 2012 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-import os
-import logging
-
-import pyauto_functional # Must be imported before pyauto
-import pyauto
-
-
-class CookiesTest(pyauto.PyUITest):
- """Tests for Cookies."""
-
- def __init__(self, methodName='runTest'):
- super(CookiesTest, self).__init__(methodName)
- self.test_host = os.environ.get('COOKIES_TEST_HOST', 'google.com')
-
- def setUp(self):
- pyauto.PyUITest.setUp(self);
- # Set the startup preference to "open the new tab page", if the startup
- # preference is "continue where I left off", session cookies will be saved.
- self.SetPrefs(pyauto.kRestoreOnStartup, 5);
-
- def _CookieCheckIncognitoWindow(self, url, cookies_enabled=True):
- """Check the cookie for the given URL in an incognito window."""
- # Navigate to the URL in an incognito window and verify no cookie is set.
- self.assertFalse(self.GetCookie(pyauto.GURL(url)),
- msg='Cannot run with pre-existing cookies')
- self.RunCommand(pyauto.IDC_NEW_INCOGNITO_WINDOW)
- self.assertFalse(self.GetCookie(pyauto.GURL(url), 1),
- msg='Fresh incognito window should not have cookies')
- self.NavigateToURL(url, 1, 0)
- if cookies_enabled:
- self.assertTrue(self.GetCookie(pyauto.GURL(url), 1),
- msg='Cookies not set in incognito window')
- else:
- self.assertFalse(self.GetCookie(pyauto.GURL(url), 1),
- msg='Cookies not blocked in incognito window')
- self.assertFalse(self.GetCookie(pyauto.GURL(url)),
- msg='Incognito mode cookies leaking to regular profile')
scottmg 2012/08/24 22:59:26 did this get lost?
jam 2012/08/25 00:23:24 yeah you're right, added.
- self.CloseBrowserWindow(1);
- self.RunCommand(pyauto.IDC_NEW_INCOGNITO_WINDOW)
- self.assertFalse(self.GetCookie(pyauto.GURL(url), 1),
- msg='Cookies persisting between incognito sessions')
- self.CloseBrowserWindow(1);
-
- def testSetCookies(self):
- """Test setting cookies and getting the value."""
- cookie_url = pyauto.GURL(self.GetFileURLForDataPath('title1.html'))
- cookie_val = 'foo=bar'
- self.assertFalse(self.GetCookie(cookie_url),
- msg='There should be no cookies for %s' % cookie_url)
- self.SetCookie(cookie_url, cookie_val)
- self.assertEqual(cookie_val, self.GetCookie(cookie_url),
- msg='Could not find the cookie value foo=bar')
-
- def testCookiesHttp(self):
- """Test cookies set over HTTP for incognito and regular windows."""
- http_url = 'http://%s' % self.test_host
- self.assertFalse(self.GetCookie(pyauto.GURL(http_url)),
- msg='There should be no cookies for %s' % http_url)
- # Incognito window
- self._CookieCheckIncognitoWindow(http_url)
- # Regular window
- self.NavigateToURL(http_url)
- cookie_data = self.GetCookie(pyauto.GURL(http_url))
- self.assertTrue(cookie_data,
- msg='Cookie did not exist after loading %s' % http_url)
- # Restart and verify that the cookie persists.
- self.RestartBrowser(clear_profile=False)
- self.assertTrue(self.GetCookie(pyauto.GURL(http_url)),
- msg='Cookie did not persist after restarting session.')
-
- def testCookiesHttps(self):
- """Test cookies set over HTTPS for incognito and regular windows."""
- https_url = 'https://%s' % self.test_host
- self.assertFalse(self.GetCookie(pyauto.GURL(https_url)),
- msg='There should be no cookies for %s' % https_url)
- # Incognito window
- self._CookieCheckIncognitoWindow(https_url)
- # Regular window
- self.NavigateToURL(https_url)
- cookie_data = self.GetCookie(pyauto.GURL(https_url))
- self.assertTrue(cookie_data,
- msg='Cookie did not exist after loading %s' % https_url)
- # Restart and verify that the cookie persists.
- self.RestartBrowser(clear_profile=False)
- self.assertTrue(self.GetCookie(pyauto.GURL(https_url)),
- msg='Cookie did not persist after restarting session.')
-
- def testCookiesFile(self):
- """Test cookies set from file:// url for incognito and regular windows."""
- file_url = self.GetFileURLForDataPath('setcookie.html')
- self.assertFalse(self.GetCookie(pyauto.GURL(file_url)),
- msg='There should be no cookie for file url %s' % file_url)
- # Incognito window
- self._CookieCheckIncognitoWindow(file_url)
- # Regular window
- self.NavigateToURL(file_url)
- self.assertEqual('name=Good', self.GetCookie(pyauto.GURL(file_url)),
- msg='Cookie does not exist after navigating to the page.')
scottmg 2012/08/24 22:59:26 these are all negative tests (that file:// blocks)
jam 2012/08/25 00:23:24 not sure what you mean? this tests is checking tha
- # Restart and verify that cookie persists
- self.RestartBrowser(clear_profile=False)
- self.assertEqual('name=Good', self.GetCookie(pyauto.GURL(file_url)),
- msg='Cookie did not persist after restarting session.')
-
- def testBlockCookies(self):
- """Verify that cookies are being blocked."""
- file_url = self.GetFileURLForDataPath('setcookie.html')
- http_url = 'http://%s' % self.test_host
- https_url = 'https://%s' % self.test_host
- self.assertFalse(self.GetCookie(pyauto.GURL(file_url)),
- msg='There should be no cookie for file url %s' % file_url)
-
- # Set the preference to block all cookies.
- self.SetPrefs(pyauto.kDefaultContentSettings, {u'cookies': 2})
- # Regular window
- self.NavigateToURL(http_url)
- self.AppendTab(pyauto.GURL(https_url))
- self.AppendTab(pyauto.GURL(file_url))
- self.assertFalse(self.GetCookie(pyauto.GURL(file_url)),
- msg='Cookies are not blocked.')
- self.assertFalse(self.GetCookie(pyauto.GURL(http_url)),
- msg='Cookies are not blocked.')
- self.assertFalse(self.GetCookie(pyauto.GURL(https_url)),
- msg='Cookies are not blocked.')
-
- # Incognito window
- self._CookieCheckIncognitoWindow(http_url, cookies_enabled=False)
-
- # Restart and verify that cookie setting persists and there are no cookies.
- self.SetPrefs(pyauto.kRestoreOnStartup, 1)
- self.RestartBrowser(clear_profile=False)
- self.assertEquals({u'cookies': 2},
- self.GetPrefsInfo().Prefs(pyauto.kDefaultContentSettings),
- msg='Cookie setting did not persist after restarting session.')
- self.assertFalse(self.GetCookie(pyauto.GURL(file_url)),
- msg='Cookies are not blocked.')
- self.assertFalse(self.GetCookie(pyauto.GURL(http_url)),
- msg='Cookies are not blocked.')
- self.assertFalse(self.GetCookie(pyauto.GURL(https_url)),
- msg='Cookies are not blocked.')
-
- def testAllowCookiesUsingExceptions(self):
- """Verify that cookies can be allowed and set using exceptions for
- particular website(s) when all others are blocked."""
- http_url = 'http://%s' % self.test_host
- self.assertFalse(self.GetCookie(pyauto.GURL(http_url)),
- msg='There should be no cookies on %s' % http_url)
-
- # Set the preference to block all cookies.
- self.SetPrefs(pyauto.kDefaultContentSettings, {u'cookies': 2})
-
- self.NavigateToURL(http_url)
- # Check that no cookies are stored.
- self.assertFalse(self.GetCookie(pyauto.GURL(http_url)),
- msg='A cookie was found when it should not have been.')
-
- # Creating an exception to allow cookies from http://www.google.com.
- self.SetPrefs(pyauto.kContentSettingsPatternPairs,
- {'[*.]%s,*' % self.test_host: { 'cookies': 1}})
- # Navigate to google.com and check if cookies are set.
- self.NavigateToURL(http_url)
- self.assertTrue(self.GetCookie(pyauto.GURL(http_url)),
- msg='Cookies are not set for the exception.')
-
- def testBlockCookiesUsingExceptions(self):
- """Verify that cookies can be blocked for a specific website
- using exceptions."""
- http_url = 'http://%s' % self.test_host
- file_url = self.GetFileURLForDataPath('setcookie.html')
- self.assertFalse(self.GetCookie(pyauto.GURL(http_url)),
- msg='There should be no cookies on %s' % http_url)
- self.assertFalse(self.GetCookie(pyauto.GURL(file_url)),
- msg='There should be no cookies on %s' % file_url)
-
- # Create an exception to block cookies from http://www.google.com
- self.SetPrefs(pyauto.kContentSettingsPatternPairs,
- {'[*.]%s,*' % self.test_host: { 'cookies': 2}})
-
- # Navigate to google.com and check if cookies are blocked.
- self.NavigateToURL(http_url)
- self.assertFalse(self.GetCookie(pyauto.GURL(http_url)),
- msg='Cookies are being set for the exception.')
-
- # Check if cookies are being set for other websites/webpages.
- self.AppendTab(pyauto.GURL(file_url))
- self.assertEqual('name=Good', self.GetCookie(pyauto.GURL(file_url)),
- msg='Unable to find cookie name=Good')
-
- def testAllowCookiesForASessionUsingExceptions(self):
- """Verify that cookies can be allowed and set using exceptions for
- particular website(s) only for a session when all others are blocked."""
- http_url = 'http://%s' % self.test_host
- self.assertFalse(self.GetCookie(pyauto.GURL(http_url)),
- msg='There should be no cookies on %s' % http_url)
-
- # Set the preference to block all cookies.
- self.SetPrefs(pyauto.kDefaultContentSettings, {u'cookies': 2})
-
- self.NavigateToURL(http_url)
- # Check that no cookies are stored.
- self.assertFalse(self.GetCookie(pyauto.GURL(http_url)),
- msg='Cookies were found for the url %s' % http_url)
-
- # Creating an exception to allow cookies for a session for google.com.
- self.SetPrefs(pyauto.kContentSettingsPatternPairs,
- {'[*.]%s,*' % self.test_host: { 'cookies': 4}})
-
- # Navigate to google.com and check if cookies are set.
- self.NavigateToURL(http_url)
- self.assertTrue(self.GetCookie(pyauto.GURL(http_url)),
- msg='Cookies are not set for the exception.')
- # Restart the browser to check that the cookie doesn't persist.
- # (This fails on ChromeOS because kRestoreOnStartup is ignored and
- # the startup preference is always "continue where I left off.")
- if not self.IsChromeOS():
- self.RestartBrowser(clear_profile=False)
- self.assertFalse(self.GetCookie(pyauto.GURL(http_url)),
- msg='Cookie persisted after restarting session.')
-
-if __name__ == '__main__':
- pyauto_functional.Main()

Powered by Google App Engine
This is Rietveld 408576698