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
31 package org.apache.commons.httpclient;
32
33 import junit.framework.Test;
34 import junit.framework.TestSuite;
35
36 import org.apache.commons.httpclient.methods.TraceMethod;
37
38 /***
39 *
40 * Simple tests of {@link TraceMethod}.
41 *
42 * @author Sean C. Sullivan
43 * @version $Id: TestTraceMethodLocal.java 155418 2005-02-26 13:01:52Z dirkv $
44 *
45 */
46 public class TestTraceMethodLocal extends TestLocalHostBase {
47
48
49
50
51 public TestTraceMethodLocal(String testName) {
52 super(testName);
53 }
54
55
56
57
58
59 public static Test suite() {
60 return new TestSuite(TestTraceMethodLocal.class);
61 }
62
63
64
65
66
67
68 public void testExecute() {
69
70 HttpClient client = createHttpClient();
71
72 TraceMethod method = new TraceMethod("/");
73
74 final String strTestHeaderName = "MyTestHeader";
75
76 final String strTestHeaderValue = "This-is-a-test-value.";
77
78 method.setRequestHeader(
79 strTestHeaderName,
80 strTestHeaderValue);
81
82 try {
83 client.executeMethod(method);
84
85 final int iResponseStatusCode = method.getStatusCode();
86 assertEquals(200, iResponseStatusCode);
87
88 Header[] requestHeaders = method.getRequestHeaders();
89 assertTrue( requestHeaders.length > 0);
90
91 Header[] responseHeaders = method.getResponseHeaders();
92 assertNotNull(responseHeaders);
93
94
95
96
97
98
99 final String strResponseBody_lowercase = method.getResponseBodyAsString().toLowerCase();
100 assertNotNull(strResponseBody_lowercase);
101 assertTrue( strResponseBody_lowercase.length() > 0);
102
103 assertTrue( strResponseBody_lowercase.indexOf(strTestHeaderName.toLowerCase()) != -1);
104 assertTrue( strResponseBody_lowercase.indexOf(strTestHeaderValue.toLowerCase()) != -1);
105
106 } catch (Throwable t) {
107 t.printStackTrace();
108 fail("Unable to execute method : " + t.toString());
109 }
110 }
111
112 public void testRecycle() {
113 HttpClient client = createHttpClient();
114
115 TraceMethod method = new TraceMethod("/");
116
117 try {
118 client.executeMethod(method);
119 } catch (Throwable t) {
120 t.printStackTrace();
121 fail("Unable to execute method : " + t.toString());
122 }
123
124 try {
125 String data = method.getResponseBodyAsString();
126 assertTrue("No data returned.",(data.length() > 0));
127 } catch (Throwable t) {
128 t.printStackTrace();
129 fail("Unable to execute method : " + t.toString());
130 }
131
132 method = new TraceMethod("/");
133
134 try {
135 client.executeMethod(method);
136 } catch (Throwable t) {
137 t.printStackTrace();
138 fail("Unable to execute method : " + t.toString());
139 }
140
141 try {
142 String data = method.getResponseBodyAsString();
143 assertTrue("No data returned.",(data.length() > 0));
144 } catch (Throwable t) {
145 t.printStackTrace();
146 fail("Unable to execute method : " + t.toString());
147 }
148 }
149
150 public static void main(String args[]) {
151 String[] testCaseName = { TestTraceMethodLocal.class.getName() };
152 junit.textui.TestRunner.main(testCaseName);
153 }
154
155
156 }