equal
deleted
inserted
replaced
1 "{ Package: 'stx:goodies/petitparser/compiler/tests/extras' }" |
1 "{ Package: 'stx:goodies/petitparser/compiler/tests/extras' }" |
2 |
2 |
3 "{ NameSpace: Smalltalk }" |
3 "{ NameSpace: Smalltalk }" |
4 |
4 |
5 TestCase subclass:#PPCSmalltalkTests |
5 TestCase subclass:#PPCSmalltalkTests |
6 instanceVariableNames:'configuration arguments' |
6 instanceVariableNames:'configuration arguments result' |
7 classVariableNames:'' |
7 classVariableNames:'' |
8 poolDictionaries:'' |
8 poolDictionaries:'' |
9 category:'PetitCompiler-Extras-Tests-Smalltalk' |
9 category:'PetitCompiler-Extras-Tests-Smalltalk' |
10 ! |
10 ! |
11 |
11 |
12 !PPCSmalltalkTests methodsFor:'as yet unclassified'! |
12 !PPCSmalltalkTests methodsFor:'as yet unclassified'! |
13 |
13 |
14 configuration |
14 assert: parser parse: input |
15 arguments := PPCArguments default |
15 result := parser parse: input. |
16 profile: true; |
16 self assert: result isPetitFailure not. |
17 yourself. |
|
18 |
|
19 ^ PPCTokenizingConfiguration new |
|
20 arguments: arguments; |
|
21 yourself. |
|
22 ! |
17 ! |
23 |
18 |
24 setUp |
19 setUp |
25 arguments := PPCArguments default |
20 arguments := PPCArguments default |
26 profile: true; |
21 profile: true; |
31 yourself. |
26 yourself. |
32 ! |
27 ! |
33 |
28 |
34 testSmalltakToken |
29 testSmalltakToken |
35 | token1 | |
30 | token1 | |
36 configuration := self configuration. |
|
37 token1 := 'a' asParser smalltalkToken compileWithConfiguration: configuration. |
31 token1 := 'a' asParser smalltalkToken compileWithConfiguration: configuration. |
38 |
32 |
39 self assert: ((token1 parse: 'a') class == PPSmalltalkToken). |
33 self assert: ((token1 parse: 'a') class == PPSmalltalkToken). |
40 self assert: (token1 parse: '"comment" a "another comment"') inputValue = 'a' |
34 self assert: (token1 parse: '"comment" a "another comment"') inputValue = 'a' |
|
35 ! |
|
36 |
|
37 testSmalltakToken2 |
|
38 | parser compiled | |
|
39 parser := 'a' asParser smalltalkToken, 'b' asParser smalltalkToken. |
|
40 compiled := parser compileWithConfiguration: configuration. |
|
41 |
|
42 self assert: compiled parse: 'ab'. |
|
43 self assert: compiled parse: '"comment" a "another comment" b '. |
|
44 self assert: result size = 2. |
|
45 self assert: result first inputValue = 'a'. |
|
46 self assert: result second inputValue = 'b'. |
|
47 |
41 ! |
48 ! |
42 |
49 |
43 testSmalltakWhitespace |
50 testSmalltakWhitespace |
44 | ws1 ws2 | |
51 | ws1 ws2 | |
45 ws1 := PPSmalltalkWhitespaceParser new. |
52 ws1 := PPSmalltalkWhitespaceParser new. |