summaryrefslogtreecommitdiff
path: root/test/ripper/test_parser_events.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/ripper/test_parser_events.rb')
-rw-r--r--test/ripper/test_parser_events.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/test/ripper/test_parser_events.rb b/test/ripper/test_parser_events.rb
index b7118fcbb2..5b05624683 100644
--- a/test/ripper/test_parser_events.rb
+++ b/test/ripper/test_parser_events.rb
@@ -652,6 +652,11 @@ class TestRipper::ParserEvents < Test::Unit::TestCase
}
assert_equal true, thru_def
assert_equal '[def(foo,[],bodystmt([void()]))]', parse('def foo ;end')
+
+ thru_def = false
+ tree = parse('def foo() = 42', :on_def) {thru_def = true}
+ assert_equal true, thru_def
+ assert_equal '[def(foo,[],42)]', tree
end
def test_defined
@@ -669,6 +674,11 @@ class TestRipper::ParserEvents < Test::Unit::TestCase
thru_parse_error = false
tree = parse('def foo&.bar; end', :on_parse_error) {thru_parse_error = true}
assert_equal(true, thru_parse_error)
+
+ thru_defs = false
+ tree = parse('def foo.bar() = 42', :on_defs) {thru_defs = true}
+ assert_equal true, thru_defs
+ assert_equal '[defs(vcall(foo),.,bar,[],42)]', tree
end
def test_do_block