471
|
1 from stonegentool import *
|
|
2 import unittest
|
|
3
|
|
4 class TestStonegentool(unittest.TestCase):
|
|
5 def test_EatToken_empty(self):
|
|
6 c = r""
|
|
7 a,b = EatToken(c)
|
|
8 self.assertEqual(a,r"")
|
|
9 self.assertEqual(b,r"")
|
|
10
|
|
11 def test_EatToken_simpleNonTemplate(self):
|
|
12 c = r"int32"
|
|
13 a,b = EatToken(c)
|
|
14 self.assertEqual(a,r"int32")
|
|
15 self.assertEqual(b,r"")
|
|
16
|
|
17 def test_EatToken_simpleTemplate(self):
|
|
18 c = r"vector<string>"
|
|
19 a,b = EatToken(c)
|
|
20 self.assertEqual(a,r"vector<string>")
|
|
21 self.assertEqual(b,r"")
|
|
22
|
|
23 def test_EatToken_complexTemplate(self):
|
|
24 c = r"vector<map<int64,string>>,vector<map<int32,string>>"
|
|
25 a,b = EatToken(c)
|
|
26 self.assertEqual(a,r"vector<map<int64,string>>")
|
|
27 self.assertEqual(b,r"vector<map<int32,string>>")
|
|
28
|
|
29 def test_EatToken_complexTemplate(self):
|
|
30 c = r"vector<map<vector<string>,map<int32,string>>>,map<int32,string>,map<map<int32,string>,string>"
|
|
31 a,b = EatToken(c)
|
|
32 self.assertEqual(a,r"vector<map<vector<string>,map<int32,string>>>")
|
|
33 self.assertEqual(b,r"map<int32,string>,map<map<int32,string>,string>")
|
|
34 a,b = EatToken(b)
|
|
35 self.assertEqual(a,r"map<int32,string>")
|
|
36 self.assertEqual(b,r"map<map<int32,string>,string>")
|
|
37
|
|
38 # def prout(self):
|
|
39 # s = 'hello world'
|
|
40 # self.assertEqual(s.split(), ['hello', 'world'])
|
|
41 # # check that s.split fails when the separator is not a string
|
|
42 # with self.assertRaises(TypeError):
|
|
43 # s.split(2)
|
|
44
|
|
45 if __name__ == '__main__':
|
|
46 unittest.main() |