PPAbstractParseTest.st
changeset 4 90de244a7fa2
parent 0 739fe9b7253e
child 50 db1ecd258e0c
equal deleted inserted replaced
3:e1b11f74e142 4:90de244a7fa2
     1 "{ Package: 'squeak:petitparser' }"
     1 "{ Package: 'stx:goodies/petitparser' }"
     2 
     2 
     3 TestCase subclass:#PPAbstractParseTest
     3 TestCase subclass:#PPAbstractParseTest
     4 	instanceVariableNames:''
     4 	instanceVariableNames:''
     5 	classVariableNames:''
     5 	classVariableNames:''
     6 	poolDictionaries:''
     6 	poolDictionaries:''
    26 	self assert: aParser fail: aCollection end: 0
    26 	self assert: aParser fail: aCollection end: 0
    27 !
    27 !
    28 
    28 
    29 assert: aParser fail: aCollection end: anInteger
    29 assert: aParser fail: aCollection end: anInteger
    30 	| stream result |
    30 	| stream result |
    31 	self 
    31 	self
    32 		assert: aParser isPetitParser
    32 		assert: aParser isPetitParser
    33 		description: 'Parser invalid'.
    33 		description: 'Parser invalid'.
    34 	stream := aCollection asPetitStream.
    34 	stream := aCollection asPetitStream.
    35 	result := aParser parse: stream.
    35 	result := aParser parse: stream.
    36 	self 
    36 	self
    37 		assert: result isPetitFailure
    37 		assert: result isPetitFailure
    38 		description: 'Parser did not fail'.
    38 		description: 'Parser did not fail'.
    39 	self
    39 	self
    40 		assert: stream position = anInteger
    40 		assert: stream position = anInteger
    41 		description: 'Parser failed at wrong position'
    41 		description: 'Parser failed at wrong position'
    42 !
    42 !
    43 
    43 
    44 assert: aParser parse: aCollection
    44 assert: aParser parse: aCollection
    45 	self assert: aParser parse: aCollection to: nil end: aCollection size 
    45 	self assert: aParser parse: aCollection to: nil end: aCollection size
    46 !
    46 !
    47 
    47 
    48 assert: aParser parse: aCollection end: anInteger
    48 assert: aParser parse: aCollection end: anInteger
    49 	self assert: aParser parse: aCollection to: nil end: anInteger
    49 	self assert: aParser parse: aCollection to: nil end: anInteger
    50 !
    50 !
    51 
    51 
    52 assert: aParser parse: aCollection to: anObject
    52 assert: aParser parse: aCollection to: anObject
    53 	self assert: aParser parse: aCollection to: anObject end: aCollection size 
    53 	self assert: aParser parse: aCollection to: anObject end: aCollection size
    54 !
    54 !
    55 
    55 
    56 assert: aParser parse: aParseObject to: aTargetObject end: anInteger
    56 assert: aParser parse: aParseObject to: aTargetObject end: anInteger
    57         | stream result |
    57 	| stream result |
    58         self 
    58 	self
    59                 assert: aParser isPetitParser
    59 		assert: aParser isPetitParser
    60                 description: 'Parser invalid'.
    60 		description: 'Parser invalid'.
    61         stream := aParseObject asPetitStream.
    61 	stream := aParseObject asPetitStream.
    62         result := aParser parse: stream.
    62 	result := aParser parse: stream.
    63         aTargetObject isNil
    63 	aTargetObject isNil
    64                 ifTrue: [ self deny: result isPetitFailure ]
    64 		ifTrue: [ self deny: result isPetitFailure ]
    65                 ifFalse: [ self assert: result = aTargetObject ].
    65 		ifFalse: [ self assert: result = aTargetObject ].
    66         self 
    66 	self
    67                 assert: stream position = anInteger
    67 		assert: stream position = anInteger
    68                 description: 'Parser accepted at wrong position'
    68 		description: 'Parser accepted at wrong position'
    69 
    69 
    70     "Modified: / 18-12-2010 / 18:01:30 / Jan Kurs <kurs.jan@post.cz>"
    70     "Modified: / 18-12-2010 / 18:01:30 / Jan Kurs <kurs.jan@post.cz>"
    71 !
    71 !
    72 
    72 
    73 assert: aParser parse: aParserObject toToken: from stop: to
    73 assert: aParser parse: aParserObject toToken: from stop: to
    83 ! !
    83 ! !
    84 
    84 
    85 !PPAbstractParseTest class methodsFor:'documentation'!
    85 !PPAbstractParseTest class methodsFor:'documentation'!
    86 
    86 
    87 version_SVN
    87 version_SVN
    88     ^ '$Id: PPAbstractParseTest.st,v 1.1 2011-08-18 18:56:17 cg Exp $'
    88     ^ '$Id: PPAbstractParseTest.st,v 1.2 2012-01-13 11:22:50 cg Exp $'
    89 ! !
    89 ! !