1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.apache.mina.filter.firewall;
22
23 import java.net.InetSocketAddress;
24
25 import junit.framework.TestCase;
26
27 import org.apache.mina.core.session.DummySession;
28
29
30
31
32
33
34
35 public class ConnectionThrottleFilterTest extends TestCase
36 {
37 private ConnectionThrottleFilter filter;
38
39 private DummySession sessionOne;
40 private DummySession sessionTwo;
41
42 @Override
43 protected void setUp() throws Exception
44 {
45 filter = new ConnectionThrottleFilter();
46
47 sessionOne = new DummySession();
48 sessionOne.setRemoteAddress( new InetSocketAddress(1234) );
49 sessionTwo = new DummySession();
50 sessionTwo.setRemoteAddress( new InetSocketAddress(1235) );
51 }
52
53 @Override
54 protected void tearDown() throws Exception
55 {
56 filter = null;
57 }
58
59 public void testGoodConnection(){
60 filter.setAllowedInterval( 100 );
61 filter.isConnectionOk( sessionOne );
62 try
63 {
64 Thread.sleep( 1000 );
65 }
66 catch ( InterruptedException e )
67 {
68
69 }
70
71 boolean result = filter.isConnectionOk( sessionOne );
72 assertTrue( result );
73 }
74
75 public void testBadConnection(){
76 filter.setAllowedInterval( 1000 );
77 filter.isConnectionOk( sessionTwo );
78 assertFalse(filter.isConnectionOk( sessionTwo ));
79 }
80
81 public static void main(String[] args) {
82 junit.textui.TestRunner.run( ConnectionThrottleFilterTest.class );
83 }
84 }