1
2 """Tests for routing"""
3
4 from sys import path
5 path.extend(['.', '..','../..'])
6
7 import unittest
8 from mosp import routing
9
10 __author__ = "F. Ludwig, P. Tute"
11 __maintainer__ = "B. Henne"
12 __contact__ = "henne@dcsec.uni-hannover.de"
13 __copyright__ = "(c) 2010-2011, DCSec, Leibniz Universitaet Hannover, Germany"
14 __license__ = "GPLv3"
15
16
18 """Tests mosp.routing basic functions."""
19
21 """Setup network, see test_routing.jpg"""
22 self.n0 = routing.RoutingNode(0)
23 self.n1 = routing.RoutingNode(1)
24 self.n2 = routing.RoutingNode(2)
25 self.n3 = routing.RoutingNode(3)
26 self.n4 = routing.RoutingNode(4)
27 self.n5 = routing.RoutingNode(5)
28 self.n6 = routing.RoutingNode(6)
29 self.n7 = routing.RoutingNode(7)
30 self.n0.neighbors = {self.n1: 4, self.n2: 1}
31 self.n1.neighbors = {self.n0: 4, self.n2: 1, self.n4: 4}
32 self.n2.neighbors = {self.n0: 1, self.n1: 1, self.n4: 2, self.n3: 1}
33 self.n3.neighbors = {self.n2: 1, self.n6: 1}
34 self.n4.neighbors = {self.n1: 4, self.n2: 2, self.n5: 4}
35 self.n5.neighbors = {self.n4: 4, self.n6: 1, self.n7: 1}
36 self.n6.neighbors = {self.n3: 1, self.n5: 1}
37 self.n7.neighbors = {self.n5: 1}
38 routing.calc([self.n0, self.n1, self.n2, self.n3, self.n4, self.n5, self.n6, self.n7])
39
41 """Tests routing."""
42 self.assertEqual(self.n0.get_route_dist(self.n2), (self.n2, 1))
43 self.assertEqual(self.n0.get_route_dist(self.n7), (self.n2, 5))
44 self.assertEqual(self.n1.get_route_dist(self.n0), (self.n2, 2))
45 self.assertEqual(self.n0.get_route_dist(self.n1), (self.n2, 2))
46 self.assertEqual(self.n1.get_route_dist(self.n6), (self.n2, 3))
47 self.assertEqual(self.n4.get_route_dist(self.n6), (self.n2, 4))
48
49
50
51
52
53
54
55
56
57
58
59
60 if __name__ == "__main__":
61 unittest.main()
62