[ruby/prism] Check value expressions on creating a node
https://github.com/ruby/prism/commit/d60948bac3
This commit is contained in:
parent
5048c4f461
commit
93e9be2f69
@ -1740,19 +1740,33 @@ module Prism
|
|||||||
], compare_ripper: false # Ripper does not check 'void value expression'.
|
], compare_ripper: false # Ripper does not check 'void value expression'.
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_void_value_expression_in_hash
|
def test_void_value_expression_in_unary_call
|
||||||
source = <<~RUBY
|
source = <<~RUBY
|
||||||
{ return => 1 }
|
+(return)
|
||||||
{ 1 => return }
|
not return
|
||||||
{ a: return }
|
|
||||||
{ **return }
|
|
||||||
RUBY
|
RUBY
|
||||||
message = 'Unexpected void value expression'
|
message = 'Unexpected void value expression'
|
||||||
assert_errors expression(source), source, [
|
assert_errors expression(source), source, [
|
||||||
[message, 2..8],
|
[message, 2..8],
|
||||||
[message, 23..29],
|
[message, 14..20],
|
||||||
[message, 37..43],
|
], compare_ripper: false # Ripper does not check 'void value expression'.
|
||||||
[message, 50..56],
|
end
|
||||||
|
|
||||||
|
def test_void_value_expression_in_binary_call
|
||||||
|
source = <<~RUBY
|
||||||
|
1 + (return)
|
||||||
|
(return) + 1
|
||||||
|
1 and (return)
|
||||||
|
(return) and 1
|
||||||
|
1 or (return)
|
||||||
|
(return) or 1
|
||||||
|
RUBY
|
||||||
|
message = 'Unexpected void value expression'
|
||||||
|
assert_errors expression(source), source, [
|
||||||
|
[message, 5..11],
|
||||||
|
[message, 14..20],
|
||||||
|
[message, 42..48],
|
||||||
|
[message, 71..77],
|
||||||
], compare_ripper: false # Ripper does not check 'void value expression'.
|
], compare_ripper: false # Ripper does not check 'void value expression'.
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user