--- a/compiler/tests/PPCCompilerTest.st Wed Nov 05 21:40:01 2014 +0000
+++ b/compiler/tests/PPCCompilerTest.st Wed Nov 05 23:05:19 2014 +0000
@@ -187,6 +187,13 @@
self assert: parser fail: 'ab'.
!
+testCompileNot3
+ parser := ('foo' asParser not, 'fee' asParser) compile.
+
+ self assert: parser parse: 'fee' to: #(nil 'fee').
+ self assert: parser fail: 'foo'.
+!
+
testCompileNotLiteral
parser := 'foo' asParser not compile.
self assert: parser class methods size = 2.
@@ -380,17 +387,15 @@
!
testSmalltalkToken
- parser := (#letter asParser, (#digit asParser / #letter asParser) star) smalltalkToken compileWithParameters: {#profile -> true}.
-
- self assert: parser class methodDictionary size = 6.
- self assert: parser parse: 'foo'.
- self assert: result inputValue = 'foo'.
- self assert: context invocationCount = 9.
- self assert: context rememberCount = 0.
- self assert: context lwRememberCount = 1.
- self assert: context lwRestoreCount = 0.
-
- "Modified: / 30-10-2014 / 23:20:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ parser := (#letter asParser, (#digit asParser / #letter asParser) star) smalltalkToken compileWithParameters: {#profile -> true}.
+
+ self assert: parser class methods size = 6.
+ self assert: parser parse: 'foo'.
+ self assert: result inputValue = 'foo'.
+ self assert: context invocationCount = 9.
+ self assert: context rememberCount = 0.
+ self assert: context lwRememberCount = 1.
+ self assert: context lwRestoreCount = 0.
!
testSmalltalkToken2
@@ -419,48 +424,44 @@
!
testToken2
- parser := (#letter asParser, (#digit asParser / #letter asParser) star) token compileWithParameters: {#profile -> true}.
-
- self assert: parser class methodDictionary size = 5.
- self assert: parser parse: 'foo'.
- self assert: result inputValue = 'foo'.
- self assert: context invocationCount = 7.
- self assert: context rememberCount = 0.
- self assert: context lwRememberCount = 1.
- self assert: context lwRestoreCount = 0.
-
- "Modified: / 30-10-2014 / 23:21:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ parser := (#letter asParser, (#digit asParser / #letter asParser) star) token compileWithParameters: {#profile -> true}.
+
+ self assert: parser class methods size = 5.
+ self assert: parser parse: 'foo'.
+ self assert: result inputValue = 'foo'.
+ self assert: context invocationCount = 7.
+ self assert: context rememberCount = 0.
+ self assert: context lwRememberCount = 1.
+ self assert: context lwRestoreCount = 0.
!
testTrimmingToken
- parser := (#letter asParser, (#digit asParser / #letter asParser) star) trimmingToken compileWithParameters: { #profile -> true }.
+ parser := (#letter asParser, (#digit asParser / #letter asParser) star) trimmingToken compileWithParameters: { #profile -> true }.
- self assert: parser class methodDictionary size = 6.
-
- self assert: parser parse: 'foo'.
- self assert: result inputValue = 'foo'.
+ self assert: parser class methods size = 6.
+
+ self assert: parser parse: 'foo'.
+ self assert: result inputValue = 'foo'.
- self assert: context invocationCount = 9.
- self assert: context rememberCount = 0.
- self assert: context lwRememberCount = 1.
- self assert: context lwRestoreCount = 0.
+ self assert: context invocationCount = 9.
+ self assert: context rememberCount = 0.
+ self assert: context lwRememberCount = 1.
+ self assert: context lwRestoreCount = 0.
- self assert: parser parse: ' foo '.
- self assert: result inputValue = 'foo'.
+ self assert: parser parse: ' foo '.
+ self assert: result inputValue = 'foo'.
- self assert: parser fail: '123'.
+ self assert: parser fail: '123'.
- self assert: context invocationCount = 3.
- self assert: context rememberCount = 0.
- self assert: context lwRememberCount = 0.
- self assert: context lwRestoreCount = 0.
+ self assert: context invocationCount = 3.
+ self assert: context rememberCount = 0.
+ self assert: context lwRememberCount = 0.
+ self assert: context lwRestoreCount = 0.
- self assert: parser fail: ''.
-
- "Modified: / 30-10-2014 / 23:21:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ self assert: parser fail: ''.
! !
!PPCCompilerTest methodsFor:'tests - first set'!