/
tests.py
70 lines (48 loc) · 1.69 KB
/
tests.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
import unittest
from onion_layers import NumberedName, flocked, get_middle_number
class TestNumberedName(unittest.TestCase):
def test_parse(self):
nn = NumberedName.from_layer_name("outline01")
self.assertEqual(nn.name, "outline")
self.assertEqual(nn.num, 1)
self.assertEqual(nn.is_mask, False)
self.assertEqual(nn.width, 2)
s = nn.to_string()
self.assertEqual(s, "outline01")
def test_parse_no_number(self):
nn = NumberedName.from_layer_name("foo")
self.assertEqual(nn.name, "foo")
self.assertEqual(nn.num, None)
self.assertEqual(nn.is_mask, False)
self.assertEqual(nn.width, None)
s = nn.to_string()
self.assertEqual(s, "foo")
class TestGetMiddleNumber(unittest.TestCase):
def test_basic(self):
self.assertEqual(50, get_middle_number(0, 100))
self.assertEqual(150, get_middle_number(100, 200))
self.assertEqual(25, get_middle_number(0, 50))
self.assertEqual(12, get_middle_number(0, 25))
self.assertEqual(6, get_middle_number(0, 12))
self.assertEqual(3, get_middle_number(0, 6))
self.assertEqual(1, get_middle_number(0, 3))
self.assertEqual(1, get_middle_number(0, 2))
self.assertEqual(2, get_middle_number(1, 3))
self.assertEqual(3, get_middle_number(2, 4))
with self.assertRaises(ValueError):
get_middle_number(0, 1)
with self.assertRaises(ValueError):
get_middle_number(1, 2)
with self.assertRaises(ValueError):
get_middle_number(2, 3)
with self.assertRaises(ValueError):
get_middle_number(1, 1)
def test_one(self):
for n in range(100):
self.assertEqual(n+1, get_middle_number(n, n+2))
class TestFlocked(unittest.TestCase):
def test_flock(self):
with flocked():
pass
if __name__ == "__main__":
unittest.main(verbosity=2)