Sha256: 7c9bbb59b86e5abba19cfcddf20c941aa25213625e3bf287a607c9bcfbc09c15
Contents?: true
Size: 1.63 KB
Versions: 79
Compression:
Stored size: 1.63 KB
Contents
require 'helper' module Journey module Definition class TestScanner < MiniTest::Unit::TestCase def setup @scanner = Scanner.new end # /page/:id(/:action)(.:format) def test_tokens [ ['/', [[:SLASH, '/']]], ['*omg', [[:STAR, '*'], [:LITERAL, 'omg']]], ['/page', [[:SLASH, '/'], [:LITERAL, 'page']]], ['/~page', [[:SLASH, '/'], [:LITERAL, '~page']]], ['/pa-ge', [[:SLASH, '/'], [:LITERAL, 'pa-ge']]], ['/:page', [[:SLASH, '/'], [:SYMBOL, ':page']]], ['/(:page)', [ [:SLASH, '/'], [:LPAREN, '('], [:SYMBOL, ':page'], [:RPAREN, ')'], ]], ['(/:action)', [ [:LPAREN, '('], [:SLASH, '/'], [:SYMBOL, ':action'], [:RPAREN, ')'], ]], ['(())', [[:LPAREN, '('], [:LPAREN, '('], [:RPAREN, ')'], [:RPAREN, ')']]], ['(.:format)', [ [:LPAREN, '('], [:DOT, '.'], [:SYMBOL, ':format'], [:RPAREN, ')'], ]], ].each do |str, expected| @scanner.scan_setup str assert_tokens expected, @scanner end end def assert_tokens tokens, scanner toks = [] while tok = scanner.next_token toks << tok end assert_equal tokens, toks end end end end
Version data entries
79 entries across 58 versions & 18 rubygems