|
1 "{ Package: 'jv:tea/compiler' }" |
|
2 |
|
3 "{ NameSpace: Smalltalk }" |
|
4 |
|
5 TestCase subclass:#TSourceReaderTests |
|
6 instanceVariableNames:'' |
|
7 classVariableNames:'' |
|
8 poolDictionaries:'' |
|
9 category:'Languages-Tea-Compiler-Model-Tests' |
|
10 ! |
|
11 |
|
12 !TSourceReaderTests methodsFor:'tests'! |
|
13 |
|
14 test_01 |
|
15 | defs | |
|
16 |
|
17 defs := TSourceReader read:' |
|
18 tObject subclass: #tMachineInteger |
|
19 category: ''tKernel'' |
|
20 '. |
|
21 self assert: defs size == 1. |
|
22 self assert: defs anElement isClass. |
|
23 self assert: (defs anElement superclassName = 'tObject'). |
|
24 self assert: (defs anElement name ='tMachineInteger'). |
|
25 self assert: (defs anElement category ='tKernel'). |
|
26 |
|
27 "Created: / 31-08-2015 / 15:48:15 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
28 ! |
|
29 |
|
30 test_02 |
|
31 | defs | |
|
32 |
|
33 defs := TSourceReader read:' |
|
34 !!tMachineInteger class methodsFor: ''tests''!! |
|
35 foo <tMachineInteger> |
|
36 ^ 1 |
|
37 '. |
|
38 self assert: defs size == 1. |
|
39 self assert: defs anElement isMethod. |
|
40 self assert: (defs anElement className ='tMachineInteger class'). |
|
41 self assert: (defs anElement category ='tests'). |
|
42 |
|
43 "Created: / 31-08-2015 / 16:34:55 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
44 ! |
|
45 |
|
46 test_03 |
|
47 | defs | |
|
48 |
|
49 defs := TSourceReader read:' |
|
50 !!tMachineInteger class methodsFor: ''tests''!! |
|
51 foo <tMachineInteger> |
|
52 ^ 1 |
|
53 !! |
|
54 bar <tMachineInteger> |
|
55 ^ 2 |
|
56 '. |
|
57 self assert: defs size == 2. |
|
58 self assert: defs first isMethod. |
|
59 self assert: (defs first className ='tMachineInteger class'). |
|
60 self assert: (defs first category ='tests'). |
|
61 self assert: defs second isMethod. |
|
62 self assert: (defs second className ='tMachineInteger class'). |
|
63 self assert: (defs second category ='tests'). |
|
64 |
|
65 "Created: / 31-08-2015 / 16:39:41 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
66 ! |
|
67 |
|
68 test_04 |
|
69 | defs | |
|
70 |
|
71 defs := TSourceReader read:' |
|
72 !!tMachineInteger class methodsFor: ''tests''!! |
|
73 foo <tMachineInteger> |
|
74 ^ 1 |
|
75 !! !! |
|
76 |
|
77 !!tMachineInteger class methodsFor: ''more tests''!! |
|
78 bar <tMachineInteger> |
|
79 ^ 2 |
|
80 '. |
|
81 self assert: defs size == 2. |
|
82 self assert: defs first isMethod. |
|
83 self assert: (defs first className ='tMachineInteger class'). |
|
84 self assert: (defs first category ='tests'). |
|
85 self assert: defs second isMethod. |
|
86 self assert: (defs second className ='tMachineInteger class'). |
|
87 self assert: (defs second category ='more tests'). |
|
88 |
|
89 "Created: / 31-08-2015 / 16:40:15 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
90 ! |
|
91 |
|
92 test_05 |
|
93 | defs | |
|
94 |
|
95 defs := TSourceReader read:' |
|
96 tObject subclass: #tMachineInteger |
|
97 category: ''tKernel'' |
|
98 !! |
|
99 |
|
100 !!tMachineInteger class methodsFor: ''tests''!! |
|
101 foo <tMachineInteger> |
|
102 ^ 1 |
|
103 !! !! |
|
104 |
|
105 '. |
|
106 self assert: defs size == 2. |
|
107 self assert: defs first isClass. |
|
108 self assert: (defs first name ='tMachineInteger'). |
|
109 self assert: (defs first category ='tKernel'). |
|
110 self assert: defs second isMethod. |
|
111 self assert: (defs second className ='tMachineInteger class'). |
|
112 self assert: (defs second category ='tests'). |
|
113 |
|
114 "Created: / 31-08-2015 / 16:43:38 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
115 ! ! |
|
116 |