1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 package org.apache.commons.httpclient.cookie;
31
32 import java.io.IOException;
33
34 import junit.framework.Test;
35 import junit.framework.TestSuite;
36
37 import org.apache.commons.httpclient.Cookie;
38 import org.apache.commons.httpclient.Header;
39 import org.apache.commons.httpclient.HttpClientTestBase;
40 import org.apache.commons.httpclient.HttpStatus;
41 import org.apache.commons.httpclient.HttpVersion;
42 import org.apache.commons.httpclient.methods.GetMethod;
43 import org.apache.commons.httpclient.server.HttpService;
44 import org.apache.commons.httpclient.server.SimpleRequest;
45 import org.apache.commons.httpclient.server.SimpleResponse;
46
47
48 /***
49 * Test cases for ignore cookie apec
50 *
51 * @author Michael Becke
52 *
53 * @version $Revision: 1425331 $
54 */
55 public class TestCookieIgnoreSpec extends HttpClientTestBase {
56
57
58
59 public TestCookieIgnoreSpec(final String testName) throws IOException {
60 super(testName);
61 }
62
63
64
65 public static Test suite() {
66 return new TestSuite(TestCookieIgnoreSpec.class);
67 }
68
69 private class BasicAuthService implements HttpService {
70
71 public BasicAuthService() {
72 super();
73 }
74
75 public boolean process(final SimpleRequest request, final SimpleResponse response)
76 throws IOException
77 {
78 HttpVersion ver = request.getRequestLine().getHttpVersion();
79 response.setStatusLine(ver, HttpStatus.SC_OK);
80 response.addHeader(new Header("Connection", "close"));
81 response.addHeader(new Header("Set-Cookie",
82 "custno = 12345; comment=test; version=1," +
83 " name=John; version=1; max-age=600; secure; domain=.apache.org"));
84 return true;
85 }
86 }
87
88 public void testIgnoreCookies() throws Exception {
89 this.server.setHttpService(new BasicAuthService());
90
91 GetMethod httpget = new GetMethod("/");
92 httpget.getParams().setCookiePolicy(CookiePolicy.IGNORE_COOKIES);
93
94 try {
95 this.client.executeMethod(httpget);
96 } finally {
97 httpget.releaseConnection();
98 }
99 assertEquals("Cookie parsing should have been disabled",
100 0, this.client.getState().getCookies().length);
101 }
102
103 public void testKeepCloverHappy() throws Exception {
104 CookieSpec cookiespec = new IgnoreCookiesSpec();
105 cookiespec.parseAttribute(null, null);
106 cookiespec.parse("host", 80, "/", false, (String)null);
107 cookiespec.parse("host", 80, "/", false, (Header)null);
108 cookiespec.validate("host", 80, "/", false, (Cookie)null);
109 cookiespec.match("host", 80, "/", false, (Cookie)null);
110 cookiespec.match("host", 80, "/", false, (Cookie [])null);
111 cookiespec.domainMatch(null, null);
112 cookiespec.pathMatch(null, null);
113 cookiespec.match("host", 80, "/", false, (Cookie [])null);
114 cookiespec.formatCookie(null);
115 cookiespec.formatCookies(null);
116 cookiespec.formatCookieHeader((Cookie)null);
117 cookiespec.formatCookieHeader((Cookie [])null);
118 }
119 }
120