diff options
Diffstat (limited to 'test/ripper/test_parser_events.rb')
-rw-r--r-- | test/ripper/test_parser_events.rb | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/test/ripper/test_parser_events.rb b/test/ripper/test_parser_events.rb index aa222de84f..9fa65fa89b 100644 --- a/test/ripper/test_parser_events.rb +++ b/test/ripper/test_parser_events.rb @@ -789,6 +789,16 @@ class TestRipper::ParserEvents < Test::Unit::TestCase tree = parse('a::X ||= c 1', :on_opassign) {thru_opassign = true} assert_equal true, thru_opassign assert_equal "[opassign(const_path_field(vcall(a),X),||=,command(c,[1]))]", tree + + thru_opassign = false + tree = parse("self.foo += 1", :on_opassign) {thru_opassign = true} + assert_equal true, thru_opassign + assert_equal "[opassign(field(ref(self),.,foo),+=,1)]", tree + + thru_opassign = false + tree = parse("self.?foo += 1", :on_opassign) {thru_opassign = true} + assert_equal true, thru_opassign + assert_equal "[opassign(field(ref(self),.?,foo),+=,1)]", tree end def test_opassign_error |