compiler/tests/extras/PPCSmalltalkTests.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Sun, 10 May 2015 06:28:36 +0100
changeset 452 9f4558b3be66
child 454 a9cd5ea7cc36
child 459 4751c407bb40
permissions -rw-r--r--
Updated to PetitCompiler-JanKurs.111, PetitCompiler-Tests-JanKurs.51, PetitCompiler-Benchmarks-JanKurs.7, added PetitCompiler-Extras-Tests-JanKurs.4 Name: PetitCompiler-JanKurs.111 Author: JanKurs Time: 08-05-2015, 05:56:05.327 PM UUID: 8805e696-9933-49b8-a5c8-a963b931b996 Name: PetitCompiler-Tests-JanKurs.51 Author: JanKurs Time: 08-05-2015, 05:17:44.224 PM UUID: 21c24114-73be-4ba2-86cd-5a4402f778a0 Name: PetitCompiler-Benchmarks-JanKurs.7 Author: JanKurs Time: 07-05-2015, 06:06:12.918 PM UUID: 0e6e2c0a-90f6-4f46-9663-c66f636da602 Name: PetitCompiler-Extras-Tests-JanKurs.4 Author: JanKurs Time: 08-05-2015, 05:56:46.180 PM UUID: 4d4d4d23-c5bc-41ef-ad41-8a56528ddb42

"{ 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.
! !