499 self assert: parser parse: 'false'. |
500 self assert: parser parse: 'false'. |
500 self assert: result inputValue = 'false'. |
501 self assert: result inputValue = 'false'. |
501 ! |
502 ! |
502 |
503 |
503 testTrimmingTokenNested3 |
504 testTrimmingTokenNested3 |
504 | identifier kw | |
505 | identifier kw | |
505 kw := ('false' asParser, #word asParser not) trimmingToken name: #kw. |
506 kw := ('false' asParser, #word asParser not) trimmingToken name: #kw. |
506 identifier := (kw not, (#letter asParser, #word asParser star)) trimmingToken name: #identifier. |
507 identifier := (kw not, (#letter asParser, #word asParser star)) trimmingToken name: #identifier. |
507 |
508 |
508 parser := identifier / kw. |
509 parser := identifier / kw. |
509 parser := parser compileWithConfiguration: configuration. |
510 parser := parser compileWithConfiguration: configuration. |
510 self assert: parser class methodDictionary size = 8. |
511 self assert: parser class methodDictionary size = 8. |
511 self assert: (parser class methods anySatisfy: [ :m | m selector = #kw ]). |
512 self assert: (parser class methodDictionary values anySatisfy: [ :m | m selector = #kw ]). |
512 self assert: (parser class methods anySatisfy: [ :m | m selector = #kw_fast ]). |
513 self assert: (parser class methodDictionary values anySatisfy: [ :m | m selector = #kw_fast ]). |
513 |
514 |
514 self assert: parser parse: 'foo'. |
515 self assert: parser parse: 'foo'. |
515 self assert: result inputValue = 'foo'. |
516 self assert: result inputValue = 'foo'. |
516 |
517 |
517 self assert: parser parse: 'false'. |
518 self assert: parser parse: 'false'. |
518 self assert: result inputValue = 'false'. |
519 self assert: result inputValue = 'false'. |
|
520 |
|
521 "Modified: / 02-05-2015 / 06:13:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
519 ! ! |
522 ! ! |
520 |
523 |
521 !PPCProtype1Test methodsFor:'tests - ids'! |
524 !PPCProtype1Test methodsFor:'tests - ids'! |
522 |
525 |
523 setUp |
526 setUp |