|
1 import unittest |
|
2 |
|
3 import pymake.data |
|
4 import pymake.functions |
|
5 |
|
6 class VariableRefTest(unittest.TestCase): |
|
7 def test_get_expansions(self): |
|
8 e = pymake.data.StringExpansion('FOO', None) |
|
9 f = pymake.functions.VariableRef(None, e) |
|
10 |
|
11 exps = list(f.expansions()) |
|
12 self.assertEqual(len(exps), 1) |
|
13 |
|
14 class GetExpansionsTest(unittest.TestCase): |
|
15 def test_get_arguments(self): |
|
16 f = pymake.functions.SubstFunction(None) |
|
17 |
|
18 e1 = pymake.data.StringExpansion('FOO', None) |
|
19 e2 = pymake.data.StringExpansion('BAR', None) |
|
20 e3 = pymake.data.StringExpansion('BAZ', None) |
|
21 |
|
22 f.append(e1) |
|
23 f.append(e2) |
|
24 f.append(e3) |
|
25 |
|
26 exps = list(f.expansions()) |
|
27 self.assertEqual(len(exps), 3) |
|
28 |
|
29 def test_descend(self): |
|
30 f = pymake.functions.StripFunction(None) |
|
31 |
|
32 e = pymake.data.Expansion(None) |
|
33 |
|
34 e1 = pymake.data.StringExpansion('FOO', None) |
|
35 f1 = pymake.functions.VariableRef(None, e1) |
|
36 e.appendfunc(f1) |
|
37 |
|
38 f2 = pymake.functions.WildcardFunction(None) |
|
39 e2 = pymake.data.StringExpansion('foo/*', None) |
|
40 f2.append(e2) |
|
41 e.appendfunc(f2) |
|
42 |
|
43 f.append(e) |
|
44 |
|
45 exps = list(f.expansions()) |
|
46 self.assertEqual(len(exps), 1) |
|
47 |
|
48 exps = list(f.expansions(True)) |
|
49 self.assertEqual(len(exps), 3) |
|
50 |
|
51 self.assertFalse(f.is_filesystem_dependent) |
|
52 |
|
53 if __name__ == '__main__': |
|
54 unittest.main() |