class ActionDispatch::Journey::NFA::TestTransitionTable
Public Instance Methods
setup()
click to toggle source
# File actionpack/test/journey/nfa/transition_table_test.rb, line 9 def setup @parser = Journey::Parser.new end
test_alphabet()
click to toggle source
# File actionpack/test/journey/nfa/transition_table_test.rb, line 57 def test_alphabet table = tt "a|:a" assert_equal [/[^\.\/\?]+/, "a"], table.alphabet table = tt "a|a" assert_equal ["a"], table.alphabet end
test_eclosure()
click to toggle source
# File actionpack/test/journey/nfa/transition_table_test.rb, line 13 def test_eclosure table = tt "/" assert_equal [0], table.eclosure(0) table = tt ":a|:b" assert_equal 3, table.eclosure(0).length table = tt "(:a|:b)" assert_equal 5, table.eclosure(0).length assert_equal 5, table.eclosure([0]).length end
test_following_states_group()
click to toggle source
# File actionpack/test/journey/nfa/transition_table_test.rb, line 32 def test_following_states_group table = tt "a|b" states = table.eclosure 0 assert_equal 1, table.following_states(states, "a").length assert_equal 1, table.following_states(states, "b").length end
test_following_states_multi()
click to toggle source
# File actionpack/test/journey/nfa/transition_table_test.rb, line 40 def test_following_states_multi table = tt "a|a" states = table.eclosure 0 assert_equal 2, table.following_states(states, "a").length assert_equal 0, table.following_states(states, "b").length end
test_following_states_one()
click to toggle source
# File actionpack/test/journey/nfa/transition_table_test.rb, line 25 def test_following_states_one table = tt "/" assert_equal [1], table.following_states(0, "/") assert_equal [1], table.following_states([0], "/") end
test_following_states_regexp()
click to toggle source
# File actionpack/test/journey/nfa/transition_table_test.rb, line 48 def test_following_states_regexp table = tt "a|:a" states = table.eclosure 0 assert_equal 1, table.following_states(states, "a").length assert_equal 1, table.following_states(states, /[^\.\/\?]+/).length assert_equal 0, table.following_states(states, "b").length end
Private Instance Methods
tt(string)
click to toggle source
# File actionpack/test/journey/nfa/transition_table_test.rb, line 66 def tt(string) ast = @parser.parse string builder = Builder.new ast builder.transition_table end