analyzer/tests/PPSearcherTest.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 13 Apr 2015 14:16:24 +0100
changeset 425 0a5c4929af56
parent 402 1d7503124bc8
permissions -rw-r--r--
Fixed dependencies (requires stx/goodies/petitparser/tests to load properly)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/petitparser/analyzer/tests' }"
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
425
0a5c4929af56 Fixed dependencies (requires stx/goodies/petitparser/tests to load properly)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 402
diff changeset
     3
"{ NameSpace: Smalltalk }"
0a5c4929af56 Fixed dependencies (requires stx/goodies/petitparser/tests to load properly)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 402
diff changeset
     4
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
PPAbstractParserTest subclass:#PPSearcherTest
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	instanceVariableNames:'searcher'
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
	classVariableNames:''
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
	poolDictionaries:''
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
	category:'PetitAnalyzer-Tests'
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
!PPSearcherTest methodsFor:'running'!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
setUp
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
	searcher := PPSearcher new
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
! !
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
!PPSearcherTest methodsFor:'testing'!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
testAnyPattern
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
	| result |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
	searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
		matches: PPPattern any
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    25
		do: [ :parser :answer | 
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    26
			answer
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    27
				add: parser;
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    28
				yourself ].
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    29
	result := searcher execute: $a asParser initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    30
	self assert: result size equals: 1.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    31
	result := searcher execute: $a asParser star initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    32
	self assert: result size equals: 2.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    33
	result := searcher execute: $a asParser , $b asParser initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    34
	self assert: result size equals: 3
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
testClassPattern
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
	| result |
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    39
	searcher
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
		matches: (PPPattern class: PPLiteralObjectParser)
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    41
		do: [ :parser :answer | 
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    42
			answer
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    43
				add: parser;
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    44
				yourself ].
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    45
	result := searcher execute: $a asParser initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    46
	self assert: result size equals: 1.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
	self assert: (result allSatisfy: [ :each | each class = PPLiteralObjectParser ]).
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    48
	result := searcher execute: 'abc' asParser initialAnswer: OrderedCollection new.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
	self assert: result isEmpty.
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    50
	result := searcher execute: #any asParser initialAnswer: OrderedCollection new.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
	self assert: result isEmpty.
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    52
	result := searcher execute: $a asParser / #any asParser , $b asParser initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    53
	self assert: result size equals: 2.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
	self assert: (result allSatisfy: [ :each | each class = PPLiteralObjectParser ])
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
testKindPattern
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
	| result |
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    59
	searcher
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
		matches: (PPPattern kind: PPLiteralParser)
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    61
		do: [ :parser :answer | 
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    62
			answer
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    63
				add: parser;
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    64
				yourself ].
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    65
	result := searcher execute: $a asParser initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    66
	self assert: result size equals: 1.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
	self assert: (result allSatisfy: [ :each | each class = PPLiteralObjectParser ]).
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    68
	result := searcher execute: 'abc' asParser initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    69
	self assert: result size equals: 1.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
	self assert: (result allSatisfy: [ :each | each class = PPLiteralSequenceParser ]).
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    71
	result := searcher execute: #any asParser initialAnswer: OrderedCollection new.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
	self assert: result isEmpty.
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    73
	result := searcher execute: $a asParser / #any asParser , $b asParser initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    74
	self assert: result size equals: 2.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
	self assert: (result allSatisfy: [ :each | each class = PPLiteralObjectParser ])
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
testMatchesAny
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
	| result |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
	searcher
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    81
		matchesAnyOf: (Array with: $a asParser with: $b asParser)
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    82
		do: [ :parser :answer | 
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    83
			answer
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    84
				add: parser;
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    85
				yourself ].
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    86
	result := searcher execute: $a asParser , $b asParser , $c asParser initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    87
	self assert: result size equals: 2.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    88
	self assert: result first literal equals: $a.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    89
	self assert: result last literal equals: $b
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
testMultiplePattern
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
	| result |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
	searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
		matches: $a asParser
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    96
		do: [ :parser :answer | 
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    97
			answer first add: parser.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
    98
			answer ].
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
	searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
		matches: PPPattern any
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   101
		do: [ :parser :answer | 
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   102
			answer second add: parser.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   103
			answer ].
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
		execute: $a asParser , $a asParser , $b asParser
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   106
		initialAnswer: (Array with: OrderedCollection new with: OrderedCollection new).
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   107
	self assert: result first size equals: 2.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   108
	self assert: result first first literal equals: $a.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   109
	self assert: result first last literal equals: $a.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   110
	self assert: result last size equals: 2.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   111
	self assert: result last first class equals: PPSequenceParser.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   112
	self assert: result last last literal equals: $b
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
testNamePattern
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
	| result |
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   117
	searcher
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
		matches: (PPPattern name: 'foo')
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   119
		do: [ :parser :answer | 
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   120
			answer
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   121
				add: parser;
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   122
				yourself ].
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   123
	result := searcher execute: $a asParser initialAnswer: OrderedCollection new.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
	self assert: result isEmpty.
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   125
	result := searcher execute: ($a asParser name: 'foo') initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   126
	self assert: result size equals: 1.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   127
	self assert: result first name equals: 'foo'.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   128
	result := searcher execute: ($a asParser name: 'bar') , ($b asParser name: 'foo') initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   129
	self assert: result size equals: 1.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   130
	self assert: result first name equals: 'foo'
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
testNewPattern
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
	self 
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
		should: [ PPPattern new ]
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
		raise: Error
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
testRecursivePattern
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
	| recursive |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
	recursive := PPDelegateParser new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
	recursive setParser: recursive.
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   143
	searcher matches: recursive do: [ :parser :answer | parser ].
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   144
	self assert: (searcher execute: recursive) equals: recursive.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
	self assert: (searcher execute: $a asParser) isNil.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
	self assert: (searcher execute: $a asParser / $b asParser star) isNil
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
testRepeatedPattern
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
	| pattern result |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
	searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
		matches: (pattern := PPPattern any) , pattern
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   153
		do: [ :parser :answer | 
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   154
			answer
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   155
				add: parser;
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   156
				yourself ].
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   157
	result := searcher execute: $a asParser , $b asParser initialAnswer: OrderedCollection new.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
	self assert: result isEmpty.
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   159
	result := searcher execute: $a asParser , $a asParser initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   160
	self assert: result size equals: 1.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   161
	result := searcher execute: $a asParser , ($a asParser , $b asParser) initialAnswer: OrderedCollection new.
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
	self assert: result isEmpty.
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   163
	result := searcher execute: $b asParser , ($a asParser , $a asParser) initialAnswer: OrderedCollection new.
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   164
	self assert: result size equals: 1
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
! !
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
!PPSearcherTest methodsFor:'testing-copy'!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
testCopyMatchAction
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
	old := $a asParser ==> [ :token | $b ].
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
testCopyMatchDelegate
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
	old := $a asParser token trim.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
testCopyMatchEpsilon
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
	old := nil asParser.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
testCopyMatchFailure
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
	old := PPFailingParser message: 'problem'.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
testCopyMatchList
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
	old := $a asParser , $b asParser , $c asParser.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
testCopyMatchLiteral
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
	old := $a asParser.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
testCopyMatchPluggable
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
	old := [ :stream | ] asParser.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
testCopyMatchPredicate
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
	old := #word asParser.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
testCopyMatchPredicateSequence
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
	old := 'foo' asParser caseInsensitive.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
testCopyMatchRecursiveDelegate
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
	old := PPDelegateParser new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
	old setParser: old.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
testCopyMatchRecursiveList
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
	old := PPChoiceParser new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
	old setParsers: (Array with: old).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
testCopyMatchRepetition
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
	old := #word asParser star.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
testCopyMatchRepetitionGreedy
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   280
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
	old := #word asParser starGreedy: #digit asParser.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
testCopyMatchRepetitionLazy
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   290
	old := #word asParser starLazy: #digit asParser.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   291
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   294
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   296
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   297
testCopyMatchRepetitionMinMax
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   298
	| old new |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
	old := #word asParser min: 5 max: 10.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
	new := old copyInContext: Dictionary new.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
	self assert: (old match: old inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
	self assert: (old match: new inContext: Dictionary new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
	self deny: (old == new).
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
! !
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
!PPSearcherTest methodsFor:'testing-lists'!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
testListInfix
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
	| result |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
	searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
		matches: PPListPattern any , $a asParser , PPListPattern any
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
		do: [ :parser :answer | true ].
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
		execute: $a asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
		execute: $a asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
		execute: $b asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
		execute: $b asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   335
		execute: $a asParser , $a asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   338
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   339
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
		execute: $b asParser , $a asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   341
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
		execute: $a asParser , $b asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   346
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   347
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   350
		execute: $a asParser , $a asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   352
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   353
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
		execute: $b asParser , $b asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   356
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   357
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   358
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   359
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   360
		execute: $a asParser , $b asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   362
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   363
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   364
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
		execute: $b asParser , $a asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   367
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   368
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
		execute: $b asParser , $b asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
	self deny: result
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   373
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
testListPostfix
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
	| result |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   377
	searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
		matches: PPListPattern any , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
		do: [ :parser :answer | true ].
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   380
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
		execute: $a asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   387
		execute: $a asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   388
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   392
		execute: $b asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   393
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   394
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   395
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   396
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   397
		execute: $b asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
		execute: $a asParser , $a asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   404
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
		execute: $b asParser , $a asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   411
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   412
		execute: $a asParser , $b asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   413
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   414
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   416
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
		execute: $a asParser , $a asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   422
		execute: $b asParser , $b asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   424
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   425
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   427
		execute: $a asParser , $b asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   431
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
		execute: $b asParser , $a asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   434
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   437
		execute: $b asParser , $b asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   438
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   439
	self assert: result
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   440
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   441
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   442
testListPrefix
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   443
	| result |
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   444
	searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   445
		matches: $a asParser , PPListPattern any
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   446
		do: [ :parser :answer | true ].
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   447
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   448
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   449
		execute: $a asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   451
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
		execute: $a asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
		execute: $b asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   464
		execute: $b asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   465
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   467
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   470
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   471
		execute: $a asParser , $a asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   472
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   474
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
		execute: $b asParser , $a asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
		execute: $a asParser , $b asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   482
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   486
		execute: $a asParser , $a asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   487
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   491
		execute: $b asParser , $b asParser , $a asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   493
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   494
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   495
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   496
		execute: $a asParser , $b asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   497
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   498
	self assert: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   500
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   501
		execute: $b asParser , $a asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   502
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   503
	self deny: result.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   504
	
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   505
	result := searcher
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   506
		execute: $b asParser , $b asParser , $b asParser
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   507
		initialAnswer: false.
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   508
	self deny: result
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   509
! !
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   510
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
!PPSearcherTest class methodsFor:'documentation'!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   513
version
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   514
    ^ '$Header: /cvs/stx/stx/goodies/petitparser/analyzer/tests/PPSearcherTest.st,v 1.1 2014-03-04 15:43:09 cg Exp $'
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   515
!
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   516
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   517
version_CVS
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   518
    ^ '$Header: /cvs/stx/stx/goodies/petitparser/analyzer/tests/PPSearcherTest.st,v 1.1 2014-03-04 15:43:09 cg Exp $'
402
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   519
!
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   520
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   521
version_HG
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   522
1d7503124bc8 Reverted back change from `assert: x equals: y` to assert: (x = u).
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 210
diff changeset
   523
    ^ '$Changeset: <not expanded> $'
210
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   524
! !
d9e67752b114 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   525