/runtime/Ruby/test/unit/test-recognizers.rb
Ruby | 55 lines | 45 code | 8 blank | 2 comment | 1 complexity | b2610c4daa8374872dcddf0dfcd239c0 MD5 | raw file
- #!/usr/bin/ruby
- # encoding: utf-8
- require 'antlr3'
- require 'test/unit'
- require 'spec'
- include ANTLR3
- class TestTokenSource < Test::Unit::TestCase
- TrivialToken = Struct.new(:type) do
- include Token
- end
- class TestSource
- include TokenSource
- def initialize
- @tokens = (1..4).map { |i| TrivialToken[i] }
- @tokens << TrivialToken[EOF]
- end
-
- def next_token
- @tokens.shift
- end
- end
-
- def test_iterator_interface
- src = TestSource.new
- tokens = []
- src.each do |token|
- tokens << token.type
- end
- tokens.should == [1,2,3,4]
- end
-
- end
- class TestLexer < Test::Unit::TestCase
- class TLexer < Lexer
- @antlr_version = ANTLR3::ANTLR_VERSION.dup
- end
- def test_init
- stream = StringStream.new('foo')
- TLexer.new(stream)
- end
- end
- __END__
- testrecognizers.py | LN | STATUS
- ---------------------------------------------+----+--------------
- class TestBaseRecognizer(unittest.TestCase) | 07 | [x]
- def testGetRuleInvocationStack(self) | 10 | [x]
- class TestTokenSource(unittest.TestCase) | 20 | [x]
- def testIteratorInterface(self) | 24 | [x]
- class TestLexer(unittest.TestCase) | 54 | [x]
- def testInit(self) | 56 | [x]