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

Side by Side Diff: android_webview/javatests/src/org/chromium/android_webview/test/CookieManagerTest.java

Issue 2933623002: Create AwJUnit4ClassRunner AwActivityTestRule and convert AwContentsTest (Closed)
Patch Set: address bo's comments Created 3 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 unified diff | Download patch
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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.android_webview.test; 5 package org.chromium.android_webview.test;
6 6
7 import android.support.test.filters.MediumTest; 7 import android.support.test.filters.MediumTest;
8 import android.test.MoreAsserts; 8 import android.test.MoreAsserts;
9 import android.util.Pair; 9 import android.util.Pair;
10 import android.webkit.ValueCallback; 10 import android.webkit.ValueCallback;
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 cookie = mCookieManager.getCookie(url); 107 cookie = mCookieManager.getCookie(url);
108 assertNotNull(cookie); 108 assertNotNull(cookie);
109 validateCookies(cookie, "test2", "header-test2"); 109 validateCookies(cookie, "test2", "header-test2");
110 } finally { 110 } finally {
111 webServer.shutdown(); 111 webServer.shutdown();
112 } 112 }
113 } 113 }
114 114
115 private void setCookieWithJavaScript(final String name, final String value) 115 private void setCookieWithJavaScript(final String name, final String value)
116 throws Throwable { 116 throws Throwable {
117 JSUtils.executeJavaScriptAndWaitForResult( 117 JSUtils.executeJavaScriptAndWaitForResult(getInstrumentation(), mAwConte nts,
118 this, mAwContents,
119 mContentsClient.getOnEvaluateJavaScriptResultHelper(), 118 mContentsClient.getOnEvaluateJavaScriptResultHelper(),
120 "var expirationDate = new Date();" 119 "var expirationDate = new Date();"
121 + "expirationDate.setDate(expirationDate.getDate() + 5);" 120 + "expirationDate.setDate(expirationDate.getDate() + 5); "
122 + "document.cookie='" + name + "=" + value 121 + "document.cookie='" + name + "=" + value
123 + "; expires=' + expirationDate.toUTCString();"); 122 + "; expires=' + expirationDate.toUTCString();");
124 } 123 }
125 124
126 @MediumTest 125 @MediumTest
127 @Feature({"AndroidWebView", "Privacy"}) 126 @Feature({"AndroidWebView", "Privacy"})
128 public void testRemoveAllCookies() throws Exception { 127 public void testRemoveAllCookies() throws Exception {
129 mCookieManager.setCookie("http://www.example.com", "name=test"); 128 mCookieManager.setCookie("http://www.example.com", "name=test");
130 assertTrue(mCookieManager.hasCookies()); 129 assertTrue(mCookieManager.hasCookies());
131 mCookieManager.removeAllCookies(); 130 mCookieManager.removeAllCookies();
132 assertFalse(mCookieManager.hasCookies()); 131 assertFalse(mCookieManager.hasCookies());
133 } 132 }
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after
359 mCookieManager.removeExpiredCookies(); 358 mCookieManager.removeExpiredCookies();
360 359
361 allCookies = mCookieManager.getCookie(url); 360 allCookies = mCookieManager.getCookie(url);
362 assertTrue(allCookies.contains(sessionCookie)); 361 assertTrue(allCookies.contains(sessionCookie));
363 assertTrue(allCookies.contains(longCookie)); 362 assertTrue(allCookies.contains(longCookie));
364 } 363 }
365 364
366 @MediumTest 365 @MediumTest
367 @Feature({"AndroidWebView", "Privacy"}) 366 @Feature({"AndroidWebView", "Privacy"})
368 public void testThirdPartyCookie() throws Throwable { 367 public void testThirdPartyCookie() throws Throwable {
369 // In theory we need two servers to test this, one server ('the first pa rty') which returns 368 // In theory we need two servers to test this, one server ('the first
370 // a response with a link to a second server ('the third party') at diff erent origin. This 369 // party') which returns a response with a link to a second server ('the third party') at
371 // second server attempts to set a cookie which should fail if AcceptThi rdPartyCookie() is 370 // different origin. This second server attempts to set a cookie which s hould fail if
372 // false. 371 // AcceptThirdPartyCookie() is false. Strictly according to the letter o f RFC6454 it should
373 // Strictly according to the letter of RFC6454 it should be possible to set this situation 372 // be possible to set this situation up with two TestServers on differen t ports (these count
374 // up with two TestServers on different ports (these count as having dif ferent origins) but 373 // as having different origins) but Chrome is not strict about this and does not check the
375 // Chrome is not strict about this and does not check the port. Instead we cheat making some 374 // port. Instead we cheat making some of the urls come from localhost an d some from
376 // of the urls come from localhost and some from 127.0.0.1 which count ( both in theory and 375 // 127.0.0.1 which count (both in theory and pratice) as having differen t origins.
377 // pratice) as having different origins.
378 TestWebServer webServer = TestWebServer.start(); 376 TestWebServer webServer = TestWebServer.start();
379 try { 377 try {
380 // Turn global allow on. 378 // Turn global allow on.
381 mCookieManager.setAcceptCookie(true); 379 mCookieManager.setAcceptCookie(true);
382 assertTrue(mCookieManager.acceptCookie()); 380 assertTrue(mCookieManager.acceptCookie());
383 381
384 // When third party cookies are disabled... 382 // When third party cookies are disabled...
385 mAwContents.getSettings().setAcceptThirdPartyCookies(false); 383 mAwContents.getSettings().setAcceptThirdPartyCookies(false);
386 assertFalse(mAwContents.getSettings().getAcceptThirdPartyCookies()); 384 assertFalse(mAwContents.getSettings().getAcceptThirdPartyCookies());
387 385
(...skipping 388 matching lines...) Expand 10 before | Expand all | Expand 10 after
776 return makeExpiringCookieMs(cookie, secondsTillExpiry * 1000); 774 return makeExpiringCookieMs(cookie, secondsTillExpiry * 1000);
777 } 775 }
778 776
779 @SuppressWarnings("deprecation") 777 @SuppressWarnings("deprecation")
780 private String makeExpiringCookieMs(String cookie, int millisecondsTillExpir y) { 778 private String makeExpiringCookieMs(String cookie, int millisecondsTillExpir y) {
781 Date date = new Date(); 779 Date date = new Date();
782 date.setTime(date.getTime() + millisecondsTillExpiry); 780 date.setTime(date.getTime() + millisecondsTillExpiry);
783 return cookie + "; expires=" + date.toGMTString(); 781 return cookie + "; expires=" + date.toGMTString();
784 } 782 }
785 } 783 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698