compiler/tests/extras/PPCSmalltalkTests.st
changeset 452 9f4558b3be66
child 454 a9cd5ea7cc36
child 459 4751c407bb40
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/compiler/tests/extras/PPCSmalltalkTests.st	Sun May 10 06:28:36 2015 +0100
@@ -0,0 +1,48 @@
+"{ Package: 'stx:goodies/petitparser/compiler/tests/extras' }"
+
+"{ NameSpace: Smalltalk }"
+
+TestCase subclass:#PPCSmalltalkTests
+	instanceVariableNames:'configuration arguments'
+	classVariableNames:''
+	poolDictionaries:''
+	category:'PetitCompiler-Extras-Tests-Smalltalk'
+!
+
+PPCSmalltalkTests comment:''
+!
+
+!PPCSmalltalkTests methodsFor:'as yet unclassified'!
+
+setUp
+    arguments := PPCArguments default
+        profile: true;
+        guards: false;
+        yourself.
+        
+    configuration := PPCLL1Configuration new
+        arguments: arguments;
+        yourself.
+!
+
+testSmalltakToken
+    | token1 token2 |
+    arguments generate: false.
+    token1 := 'a' asParser smalltalkToken compileWithConfiguration: configuration.
+    token2 := 'b' asParser smalltalkToken compileWithConfiguration: configuration.
+    
+    self assert: token1 tokenizer children first tokenClass = PPSmalltalkToken.
+    self assert: token1 tokenizer children first whitespace = token1 tokenizer children first  whitespace.
+!
+
+testSmalltakWhitespace
+    | ws1 ws2 |
+    ws1 := PPSmalltalkWhitespaceParser new.
+    ws2 := PPSmalltalkWhitespaceParser new.
+    
+    self assert: ws1 = ws2.
+    self assert: (ws1 == ws2) not.
+    
+    self assert: ws1 hash = ws2 hash.
+! !
+