-
Notifications
You must be signed in to change notification settings - Fork 0
/
test_TSPopt.py
87 lines (74 loc) · 2.86 KB
/
test_TSPopt.py
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
from unittest import TestCase
import TSPopt
import numpy
''' TSP testing '''
class TSP0(TestCase):
def setUp(self):
self.segList1 = [(0., 1.), (0., 2.), (0., 3.), (0., 4.), (0., 5.)]
class TSP0Test0(TSP0):
def runTest(self):
delta, seglist2 = TSPopt.threeOptLoop(self.segList1)
self.assertEqual(delta,0.)
self.assertEqual(numpy.amax(seglist2),5.0)
self.assertEqual(numpy.amin(seglist2),0.0)
class TSP1(TestCase):
# In this testcase, 0,4 is last, so it cannot be optimized fully.
def setUp(self):
self.segList1 = [(0., 1.), (0., 2.), (0., 6.), (0., 5.), (0., 3.), (0., 4.)]
class TSP1Test0(TSP1):
def runTest(self):
delta, seglist2 = TSPopt.threeOptLoop(self.segList1)
self.assertEqual(delta,-2.0)
self.assertEqual(numpy.amax(seglist2),6.0)
self.assertEqual(numpy.amin(seglist2),0.0)
class TSP2(TestCase):
def setUp(self):
self.segList1 = [(0., 1.), (0., 2.), (0., 6.), (0., 5.), (0., 3.), (0., 4.), (0., 7.)]
class TSP2Test0(TSP2):
def runTest(self):
delta, seglist2 = TSPopt.threeOptLoop(self.segList1)
self.assertEqual(delta,-6.0)
self.assertEqual(numpy.amax(seglist2),7.0)
self.assertEqual(numpy.amin(seglist2),0.0)
''' distABtoP Testing '''
class Dist0(TestCase):
def setUp(self):
self.segList1 = [(0., 1.), (0., 2.), (0., 3.), (0., 4.), (0., 5.)]
class Dist0Test0(Dist0):
def runTest(self):
d1,(x,y) = TSPopt.distABtoP(self.segList1[0],
self.segList1[1],
self.segList1[2])
self.assertEqual(d1, 1)
self.assertEqual(x,0.)
self.assertEqual(y,2.)
d2,(x,y) = TSPopt.distABtoP(self.segList1[0],
self.segList1[1],
self.segList1[3])
self.assertEqual(d2, 2)
self.assertEqual(x,0.)
self.assertEqual(y,2.)
d3,(x,y) = TSPopt.distABtoP(self.segList1[0],
self.segList1[1],
(1., 1.))
self.assertEqual(d3, 1)
self.assertEqual(x,0.)
self.assertEqual(y,1.)
d4,(x,y) = TSPopt.distABtoP(self.segList1[0],
self.segList1[2],
(1., 1.))
self.assertEqual(d4, 1)
self.assertEqual(x,0.)
self.assertEqual(y,1.)
d5,(x,y) = TSPopt.distABtoP(self.segList1[0],
self.segList1[2],
(-5., 2.))
self.assertEqual(d5, 5)
self.assertEqual(x,0.)
self.assertEqual(y,2.)
d6,(x,y) = TSPopt.distABtoP(self.segList1[0],
self.segList1[2],
(4., 6.))
self.assertEqual(d6, 5)
self.assertEqual(x,0.)
self.assertEqual(y,3.)