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 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