From 1433098036fe311ee707553cf4943f1fe6006720 Mon Sep 17 00:00:00 2001 From: nobu Date: Sat, 1 Jul 2017 01:29:22 +0000 Subject: test_parser_events.rb: simplify * test/ripper/dummyparser.rb (DummyParser): simplified mlhs node representation. * test/ripper/test_parser_events.rb (test_mlhs_add_star): simplified assertions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ripper/dummyparser.rb | 33 +++++++++++++++++++++++++++++++++ test/ripper/test_parser_events.rb | 10 +++++----- 2 files changed, 38 insertions(+), 5 deletions(-) diff --git a/test/ripper/dummyparser.rb b/test/ripper/dummyparser.rb index 05220dc897..6de7e19013 100644 --- a/test/ripper/dummyparser.rb +++ b/test/ripper/dummyparser.rb @@ -38,6 +38,11 @@ class NodeList self end + def concat(item) + @list.concat item + self + end + def prepend(items) @list.unshift items end @@ -209,6 +214,34 @@ class DummyParser < Ripper words.push word end + def on_mlhs_new + NodeList.new + end + + def on_mlhs_paren(list) + Node.new(:mlhs, list) + end + + def on_mlhs_add(list, node) + list.push node + end + + def on_mlhs_add_block(list, blk) + if blk + list.push('&' + blk.to_s) + else + list + end + end + + def on_mlhs_add_star(list, arg) + list.push('*' + arg.to_s) + end + + def on_mlhs_add_post(list, post) + list.concat(post.list) + end + def on_rescue(exc, *rest) Node.new('rescue', (exc && NodeList.new(exc)), *rest) end diff --git a/test/ripper/test_parser_events.rb b/test/ripper/test_parser_events.rb index 7eac20a3ec..94c55aa15e 100644 --- a/test/ripper/test_parser_events.rb +++ b/test/ripper/test_parser_events.rb @@ -470,23 +470,23 @@ class TestRipper::ParserEvents < Test::Unit::TestCase thru_mlhs_add_star = false tree = parse("a, *b = 1, 2", :on_mlhs_add_star) {thru_mlhs_add_star = true} assert_equal true, thru_mlhs_add_star - assert_match(/mlhs_add_star\(mlhs_add\(mlhs_new\(\),a\),b\)/, tree) + assert_include(tree, "massign([a,*b]") thru_mlhs_add_star = false tree = parse("a, *b, c = 1, 2", :on_mlhs_add_star) {thru_mlhs_add_star = true} assert_equal true, thru_mlhs_add_star - assert_match(/mlhs_add\(mlhs_add_star\(mlhs_add\(mlhs_new\(\),a\),b\),mlhs_add\(mlhs_new\(\),c\)\)/, tree, bug2232) + assert_include(tree, "massign([a,*b,[c]]", bug2232) thru_mlhs_add_star = false tree = parse("a, *, c = 1, 2", :on_mlhs_add_star) {thru_mlhs_add_star = true} assert_equal true, thru_mlhs_add_star - assert_match(/mlhs_add\(mlhs_add_star\(mlhs_add\(mlhs_new\(\),a\)\),mlhs_add\(mlhs_new\(\),c\)\)/, tree, bug4364) + assert_include(tree, "massign([a,*,[c]]", bug4364) thru_mlhs_add_star = false tree = parse("*b, c = 1, 2", :on_mlhs_add_star) {thru_mlhs_add_star = true} assert_equal true, thru_mlhs_add_star - assert_match(/mlhs_add\(mlhs_add_star\(mlhs_new\(\),b\),mlhs_add\(mlhs_new\(\),c\)\)/, tree, bug4364) + assert_include(tree, "massign([*b,[c]]", bug4364) thru_mlhs_add_star = false tree = parse("*, c = 1, 2", :on_mlhs_add_star) {thru_mlhs_add_star = true} assert_equal true, thru_mlhs_add_star - assert_match(/mlhs_add\(mlhs_add_star\(mlhs_new\(\)\),mlhs_add\(mlhs_new\(\),c\)\)/, tree, bug4364) + assert_include(tree, "massign([*,[c]],", bug4364) end def test_mlhs_new -- cgit v1.2.3