1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package net.grinder.plugin.http.tcpproxyfilter;
23
24 import junit.framework.TestCase;
25
26 import net.grinder.testutility.RandomStubFactory;
27 import net.grinder.tools.tcpproxy.ConnectionDetails;
28 import net.grinder.tools.tcpproxy.EndPoint;
29
30
31
32
33
34
35
36 public class TestHTTPRequestFilter extends TestCase {
37
38 private final ConnectionDetails m_connectionDetails =
39 new ConnectionDetails(
40 new EndPoint("hostA", 80),
41 new EndPoint("hostB", 80),
42 false);
43
44 public void testDelegation() throws Exception {
45 final RandomStubFactory<HTTPFilterEventListener> connectionMapStubFactory =
46 RandomStubFactory.create(HTTPFilterEventListener.class);
47
48 final HTTPRequestFilter filter =
49 new HTTPRequestFilter(connectionMapStubFactory.getStub());
50
51 connectionMapStubFactory.assertNoMoreCalls();
52
53 filter.connectionOpened(m_connectionDetails);
54 connectionMapStubFactory.assertSuccess("open", m_connectionDetails);
55
56 final byte[] buffer = new byte[100];
57
58 final byte[] result = filter.handle(m_connectionDetails, buffer, 56);
59 assertNull(result);
60 connectionMapStubFactory.assertSuccess(
61 "request", m_connectionDetails, buffer, new Integer(56));
62
63 filter.connectionClosed(m_connectionDetails);
64 connectionMapStubFactory.assertSuccess("close", m_connectionDetails);
65
66 connectionMapStubFactory.assertNoMoreCalls();
67 }
68 }