unitests: Remove extending TestCase from unitest classes.
[controller.git] / opendaylight / samples / loadbalancer / src / test / java / org / opendaylight / controller / samples / loadbalancer / internal / LoadBalancerTest.java
1 /*\r
2  * Copyright IBM Corporation, 2013.  All rights reserved.\r
3  *\r
4  * This program and the accompanying materials are made available under the\r
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
6  * and is available at http://www.eclipse.org/legal/epl-v10.html\r
7  */\r
8 package org.opendaylight.controller.samples.loadbalancer.internal;\r
9 \r
10 \r
11 import org.junit.Assert;\r
12 import org.junit.Test;\r
13 import org.opendaylight.controller.samples.loadbalancer.ConfigManager;\r
14 import org.opendaylight.controller.samples.loadbalancer.entities.Client;\r
15 import org.opendaylight.controller.samples.loadbalancer.entities.Pool;\r
16 import org.opendaylight.controller.samples.loadbalancer.entities.PoolMember;\r
17 import org.opendaylight.controller.samples.loadbalancer.entities.VIP;\r
18 import org.opendaylight.controller.samples.loadbalancer.policies.RoundRobinLBPolicy;\r
19 \r
20 /**\r
21  *\r
22  * Class to unit test the load balancing policies.\r
23  *\r
24  */\r
25 public class LoadBalancerTest {\r
26     @Test\r
27     public void testRoundRobinPolicy() {\r
28         ConfigManager cm = null;\r
29         cm = new ConfigManager();\r
30 \r
31         Pool pool = cm.createPool("TestPool","roundrobin");\r
32         VIP vip = cm.createVIP("TestVIP","10.0.0.9","TCP",(short)5550,"TestPool");\r
33         PoolMember host1 = new PoolMember("host1","10.0.0.1","TestPool");\r
34         PoolMember host2 = new PoolMember("host2","10.0.0.2","TestPool");\r
35         PoolMember host3 = new PoolMember("host3","10.0.0.3","TestPool");\r
36         PoolMember host4 = new PoolMember("host4","10.0.0.4","TestPool");\r
37         PoolMember host5 = new PoolMember("host5","10.0.0.5","TestPool");\r
38         PoolMember host6 = new PoolMember("host6","10.0.0.6","TestPool");\r
39         PoolMember host7 = new PoolMember("host7","10.0.0.7","TestPool");\r
40 \r
41         pool.addMember(host1);\r
42         pool.addMember(host2);\r
43         pool.addMember(host3);\r
44         pool.addMember(host4);\r
45         pool.addMember(host5);\r
46         pool.addMember(host6);\r
47         pool.addMember(host7);\r
48         pool.addVIP(vip);\r
49 \r
50         Assert.assertTrue(cm.getAllPoolMembers("TestPool").size() == pool.getAllMembers().size());\r
51 \r
52         RoundRobinLBPolicy rrp = new RoundRobinLBPolicy(cm);\r
53 \r
54         Client c1 = new Client("10.0.0.1","TCP",(short)5000);\r
55         Assert.assertTrue(rrp.getPoolMemberForClient(c1, vip).equals(host1.getIp()));\r
56 \r
57         c1 = new Client("10.0.0.1","TCP",(short)5001);\r
58         Assert.assertTrue(rrp.getPoolMemberForClient(c1, vip).equals(host2.getIp()));\r
59 \r
60         c1 = new Client("10.0.0.1","TCP",(short)5002);\r
61         Assert.assertTrue(rrp.getPoolMemberForClient(c1, vip).equals(host3.getIp()));\r
62 \r
63         c1 = new Client("10.0.0.1","TCP",(short)5003);\r
64         Assert.assertTrue(rrp.getPoolMemberForClient(c1, vip).equals(host4.getIp()));\r
65     }\r
66 }