-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathruntests.py
More file actions
122 lines (105 loc) · 3.55 KB
/
runtests.py
File metadata and controls
122 lines (105 loc) · 3.55 KB
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
from vector import Vec3D
from Particles import Particle
from random import random, seed, shuffle, gauss
from verlet import init_graphics
import unittest
class run_tests(unittest.TestCase):
'''Vector class unit tests'''
def test_001(self):
'''A zero vector should be created'''
vector1 = Vec3D(0.0,0.0,0.0)
result = Vec3D(0.0,0.0,0.0)
self.assertEqual(vector1,result)
def test_002(self):
'''A non-zero vector should be created'''
vector1 = Vec3D(1.0,1.0,1.0)
result = Vec3D(0.0,0.0,0.0)
self.assertNotEqual(vector1,result)
def test_003(self):
'''Vector Addition'''
vector1 = Vec3D(1.0,1.0,1.0)
vector2 = Vec3D(2.0,2.0,2.0)
result = Vec3D(3.0,3.0,3.0)
vector3 = vector1+vector2
self.assertEqual(vector3,result)
def test_004(self):
'''Vector Subtraction'''
vector1 = Vec3D(1.0,1.0,1.0)
vector2 = Vec3D(2.0,2.0,2.0)
result = Vec3D(-1.0,-1.0,-1.0)
vector3 = vector1-vector2
self.assertEqual(vector3,result)
def test_005(self):
'''Vector Multiplication'''
vector1 = Vec3D(1.0,1.0,1.0)
vector2 = Vec3D(2.0,2.0,2.0)
result = Vec3D(2.0,2.0,2.0)
vector3 = vector1*vector2
self.assertEqual(vector3,result)
def test_006(self):
'''Scalar Addition'''
vector1 = Vec3D(1.0,1.0,1.0)
scalar = 2.1
result = Vec3D(3.1,3.1,3.1)
vector1 += scalar
self.assertEqual(vector1,result)
def test_007(self):
'''Scalar Subtraction'''
vector1 = Vec3D(1.0,1.0,1.0)
scalar = 2.1
result = Vec3D(-1.1,-1.1,-1.1)
vector1 -= scalar
self.assertEqual(vector1,result)
def test_008(self):
'''Positive Scalar iMultiplication'''
vector1 = Vec3D(1.0,1.0,1.0)
scalar = 2.0
result = Vec3D(2.0,2.0,2.0)
vector1 *= scalar
self.assertEqual(vector1,result)
def test_009(self):
'''Negative Scalar iMultiplication TC1'''
vector1 = Vec3D(1.0,1.0,1.0)
scalar = -3.0
result = Vec3D(-3.0,-3.0,-3.0)
vector1 *= scalar
self.assertEqual(vector1,result)
def test_010(self):
'''Negative Scalar iMultiplication TC2'''
vector1 = Vec3D(-1.0,1.0,1.0)
scalar = -3.0
result = Vec3D(3.0,-3.0,-3.0)
vector1 *= scalar
self.assertEqual(vector1,result)
def test_011(self):
'''Vector properties'''
vector1 = Vec3D(-1.0,1.0,1.0)
result = -1.0
self.assertEqual(vector1._x,result)
def test_012(self):
'''Set Vector properties'''
vector1 = Vec3D(-1.0,1.0,1.0)
scalar1 = -2.0
scalar2 = 5.1
vector1._x = scalar1 + scalar2
result = Vec3D(3.1,1.0,1.0)
self.assertAlmostEqual(vector1, result, places=7, msg=None, delta=None)
def test_013(self):
'''Augment Vector properties'''
vector1 = Vec3D(-1.0,1.0,1.0)
scalar1 = -2.0
scalar2 = 5.1
vector1._x += scalar1 + scalar2
result = Vec3D(2.1,1.0,1.0)
self.assertAlmostEqual(vector1, result, places=7, msg=None, delta=None)
def test_014(self):
'''Augment Vector'''
vector1 = Vec3D(-1.0,1.0,1.0)
scalar1 = -2.0
vector2 = Vec3D(-2.0,0.0,5.1)
vector1 += vector2*scalar1
result = Vec3D(3.0,1.0,-9.2)
self.assertAlmostEqual(vector1, result, places=7, msg=None, delta=None)
'''Particle class unit tests'''
if __name__ == '__main__':
unittest.main()