--- a/compiler/tests/PPCUnivarsalGuardTest.st Mon Sep 07 08:20:46 2015 +0100
+++ b/compiler/tests/PPCUnivarsalGuardTest.st Mon Sep 07 11:53:38 2015 +0100
@@ -22,14 +22,14 @@
!
setUp
- options := (PPCCompilationOptions default)
+ options := (PPCCompilationOptions new)
profile:true;
tokenize:false;
yourself.
compiler := PPCCompiler new.
compiler context options:options
- "Modified: / 04-09-2015 / 16:21:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 07-09-2015 / 10:22:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
tearDown
@@ -44,74 +44,79 @@
!PPCUnivarsalGuardTest methodsFor:'tests - guard'!
testChoiceGuard
- parser := ('foo' asParser trimmingToken / 'bar' asParser trimmingToken
- / $d asParser trimmingToken plus) compileUsingCompiler:compiler.
+ parser := compiler compile: ('foo' asParser trimmingToken / 'bar' asParser trimmingToken
+ / $d asParser trimmingToken plus).
self assert: parser parse: 'foo'.
- self assert: result inputValue = 'foo'.
+ self assert: result inputValue = 'foo'.
self assert: (context invocations anySatisfy: [ :e | e beginsWith: 'token' ]).
self assert: parser parse: 'bar'.
- self assert: result inputValue = 'bar'.
+ self assert: result inputValue = 'bar'.
self assert: parser parse: ' foo'.
- self assert: result inputValue = 'foo'.
+ self assert: result inputValue = 'foo'.
self assert: parser parse: ' d'.
- self assert: result first inputValue = 'd'.
+ self assert: result first inputValue = 'd'.
self assert: parser fail: ''.
self assert: (context invocations noneSatisfy: [ :e | e beginsWith: 'predicate' ]).
self assert: (context invocations noneSatisfy: [ :e | e beginsWith: 'token' ]).
- self assert: parser fail: 'zorg'.
+ self assert: parser fail: 'zorg'.
self assert: (context invocations noneSatisfy: [ :e | e beginsWith: 'token' ]).
+
+ "Modified: / 07-09-2015 / 12:39:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
testEmptyChoiceGuard
- parser := ('foo' asParser trimmingToken / 'bar' asParser trimmingToken
- / $d asParser trimmingToken star) compileUsingCompiler:compiler.
+ parser := compiler compile: ('foo' asParser trimmingToken / 'bar' asParser trimmingToken
+ / $d asParser trimmingToken star).
self assert: parser parse: 'foo'.
- self assert: result inputValue = 'foo'.
+ self assert: result inputValue = 'foo'.
self assert: parser parse: 'bar'.
- self assert: result inputValue = 'bar'.
+ self assert: result inputValue = 'bar'.
self assert: parser parse: ' foo'.
- self assert: result inputValue = 'foo'.
+ self assert: result inputValue = 'foo'.
self assert: parser parse: ' d'.
- self assert: result first inputValue = 'd'.
+ self assert: result first inputValue = 'd'.
self assert: parser parse: ''.
- self assert: parser parse: 'zorg' end: 0.
+ self assert: parser parse: 'zorg' end: 0.
+
+ "Modified: / 07-09-2015 / 12:39:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
testGuardSmalltlakToken
- parser := (#letter asParser , #word asParser star) smalltalkToken
- compileUsingCompiler:compiler.
-
+ parser := compiler compile: (#letter asParser , #word asParser star) smalltalkToken.
+
self assert: parser parse: 'bar'.
self assert: (context invocations anySatisfy: [ :e | e beginsWith: 'seq' ]).
self assert: parser fail: '123'.
self assert: (context invocations noneSatisfy: [ :e | e beginsWith: 'seq' ]).
+
+ "Modified (format): / 07-09-2015 / 12:39:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
testSequenceGuard
- parser := ((#any asParser , #any asParser) wrapped , (#any asParser , #any asParser))
- compileUsingCompiler:compiler.
-
- self assert: parser parse: 'fooo' to: #(#($f $o) #($o $o)).
- self assert: parser parse: 'fo oo' to: #(#($f $o) #($ $o)) end: 4.
+ parser := compiler compile: ((#any asParser , #any asParser) wrapped , (#any asParser , #any asParser)).
+
+ self assert: parser parse: 'fooo' to: #(#($f $o) #($o $o)).
+ self assert: parser parse: 'fo oo' to: #(#($f $o) #($ $o)) end: 4.
self assert: parser fail: 'fo'.
-
+
+ "Modified: / 07-09-2015 / 12:39:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
testTrimmerGuard
- parser := $a asParser trim , $b asParser compileUsingCompiler:compiler.
+ parser := compiler compile: ($a asParser trim , $b asParser).
self assert: parser parse: 'ab'.
self assert: parser parse: ' ab'.