Revision: 791
http://jwebunit.svn.sourceforge.net/jwebunit/?rev=791&view=rev
Author: jevonwright
Date: 2008-12-17 02:11:09 +0000 (Wed, 17 Dec 2008)
Log Message:
-----------
adding a test case to make sure that cookies persist across page requests
Modified Paths:
--------------
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/WebCookieTest.java
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/util/CookiesServlet.java
trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/util/TestContext.java
Modified:
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/WebCookieTest.java
===================================================================
---
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/WebCookieTest.java
2008-12-12 20:52:32 UTC (rev 790)
+++
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/WebCookieTest.java
2008-12-17 02:11:09 UTC (rev 791)
@@ -52,4 +52,22 @@
beginAt("/cookies.jsp");
assertCookieValueMatch("serveurCookie", "fo*");
}
+
+ /**
+ * Test that the cookie still exists across multiple requests,
+ * even if the cookie is not explicitly set each time.
+ */
+ public void testCookieWithoutExplicitSet() {
+ beginAt("/cookies.jsp"); // beginAt also resets cookies
+ assertCookieValueEquals("serveurCookie", "foo");
+ gotoPage("/cookies.jsp?dont_set=1");
+ assertCookieValueEquals("serveurCookie", "foo"); // should still
be there
+ gotoPage("/cookies.jsp?dont_set=1");
+ assertCookieValueEquals("serveurCookie", "foo"); // should still
be there
+ gotoPage("/cookies.jsp?dont_set=1");
+ assertCookieValueEquals("serveurCookie", "foo"); // should still
be there
+
+
+ }
+
}
\ No newline at end of file
Modified:
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/util/CookiesServlet.java
===================================================================
---
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/util/CookiesServlet.java
2008-12-12 20:52:32 UTC (rev 790)
+++
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/util/CookiesServlet.java
2008-12-17 02:11:09 UTC (rev 791)
@@ -52,8 +52,11 @@
out.write(HtmlHelper.getEnd());
- Cookie cookie = new Cookie("serveurCookie","foo");
- response.addCookie(cookie);
+ // to disable explicitly setting the cookie on each request
+ if (request.getParameter("dont_set") == null) {
+ Cookie cookie = new Cookie("serveurCookie","foo");
+ response.addCookie(cookie);
+ }
}
}
Modified:
trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/util/TestContext.java
===================================================================
---
trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/util/TestContext.java
2008-12-12 20:52:32 UTC (rev 790)
+++
trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/util/TestContext.java
2008-12-17 02:11:09 UTC (rev 791)
@@ -127,11 +127,26 @@
* @param name cookie name.
* @param value cookie value.
* @param domain cookie domain (ie localhost or www.foo.bar).
+ * @param expiry the expiry date in seconds. -1 will delete this cookie, 0
will delete it at the end of the browser session.
*/
+ public void addCookie(String name, String value, String domain, int
expiry) {
+ Cookie c = new Cookie(name, value);
+ c.setDomain(domain);
+ c.setMaxAge(expiry);
+ addCookie(c);
+ }
+
+ /**
+ * Add a cookie to the test context. These cookies are set on the
conversation when you use a {WebTester#beginAt}.
+ *
+ * @param name cookie name.
+ * @param value cookie value.
+ * @param domain cookie domain (ie localhost or www.foo.bar).
+ */
public void addCookie(String name, String value, String domain) {
Cookie c = new Cookie(name, value);
c.setDomain(domain);
- cookies.add(c);
+ addCookie(c);
}
/**
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada.
The future of the web can't happen without you. Join us at MIX09 to help
pave the way to the Next Web now. Learn more and register at
http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/
_______________________________________________
JWebUnit-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jwebunit-development