|
1 "{ Package: 'stx:goodies/petitparser/compiler/tests' }" |
|
2 |
|
3 "{ NameSpace: Smalltalk }" |
|
4 |
|
5 TestCase subclass:#PPCMergingVisitorTest |
|
6 instanceVariableNames:'node result visitor node1 node2' |
|
7 classVariableNames:'' |
|
8 poolDictionaries:'' |
|
9 category:'PetitCompiler-Tests-Visitors' |
|
10 ! |
|
11 |
|
12 |
|
13 !PPCMergingVisitorTest methodsFor:'as yet unclassified'! |
|
14 |
|
15 javaWsNode |
|
16 ^ PPCUnknownNode new |
|
17 parser: PPJavaWhitespaceParser new; |
|
18 yourself |
|
19 ! |
|
20 |
|
21 nilNode |
|
22 ^ PPCNilNode new |
|
23 ! |
|
24 |
|
25 setUp |
|
26 visitor := PPCMergingVisitor new |
|
27 ! |
|
28 |
|
29 testJavaWS |
|
30 node1 := self javaWsNode. |
|
31 node2 := self javaWsNode. |
|
32 |
|
33 node := PPCSequenceNode new |
|
34 children: { node1 . node2 }. |
|
35 |
|
36 self assert: (node children first == node children second) not. |
|
37 node := visitor visit: node. |
|
38 self assert: (node children first == node children second). |
|
39 ! |
|
40 |
|
41 testNilNode |
|
42 node1 := self nilNode. |
|
43 node2 := self nilNode. |
|
44 |
|
45 node := PPCSequenceNode new |
|
46 children: { node1 . node2 }. |
|
47 |
|
48 self assert: (node children first == node children second) not. |
|
49 node := visitor visit: node. |
|
50 self assert: (node children first == node children second). |
|
51 ! |
|
52 |
|
53 testNilNode2 |
|
54 node1 := self nilNode |
|
55 name: #foo; |
|
56 yourself. |
|
57 node2 := self nilNode |
|
58 name: #bar; |
|
59 yourself. |
|
60 |
|
61 node := PPCSequenceNode new |
|
62 children: { node1 . node2 }. |
|
63 |
|
64 self assert: (node children first == node children second) not. |
|
65 node := visitor visit: node. |
|
66 self assert: (node children first == node children second) not. |
|
67 ! ! |
|
68 |
|
69 !PPCMergingVisitorTest class methodsFor:'documentation'! |
|
70 |
|
71 version_HG |
|
72 |
|
73 ^ '$Changeset: <not expanded> $' |
|
74 ! ! |
|
75 |