compiler/tests/extras/PPCSmalltalkTests.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 21 May 2015 14:35:34 +0100
changeset 465 f729f6cd3c76
parent 460 87a3d30ab570
parent 464 f6d77fee9811
child 510 869853decf31
permissions -rw-r--r--
Merge

"{ Package: 'stx:goodies/petitparser/compiler/tests/extras' }"

"{ NameSpace: Smalltalk }"

TestCase subclass:#PPCSmalltalkTests
	instanceVariableNames:'configuration arguments'
	classVariableNames:''
	poolDictionaries:''
	category:'PetitCompiler-Extras-Tests-Smalltalk'
!

!PPCSmalltalkTests methodsFor:'as yet unclassified'!

setUp
    arguments := PPCArguments default
        profile: true;
        yourself.
        
    configuration := PPCTokenizingConfiguration 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.
! !