ruby_parser 3.8.1 → 3.8.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1401,6 +1401,19 @@ module TestRubyParserShared
1401
1401
  assert_parse rb, pt
1402
1402
  end
1403
1403
 
1404
+ def test_qwords_line_breaks
1405
+ skip "not yet"
1406
+
1407
+ rb = "%w(\na\nb\n)\n1"
1408
+ pt = s(:block,
1409
+ s(:array,
1410
+ s(:str, "a").line(2),
1411
+ s(:str, "b").line(3)).line(1),
1412
+ s(:lit, 1).line(5))
1413
+
1414
+ assert_parse rb, pt
1415
+ end
1416
+
1404
1417
  def test_qWords_space
1405
1418
  rb = "%W( )"
1406
1419
  pt = s(:array)
@@ -2196,6 +2209,13 @@ module TestRubyParserShared20to22
2196
2209
  assert_parse rb, pt
2197
2210
  end
2198
2211
 
2212
+ def test_dstr_lex_state
2213
+ rb = '"#{p:a}"'
2214
+ pt = s(:dstr, "", s(:evstr, s(:call, nil, :p, s(:lit, :a))))
2215
+
2216
+ assert_parse rb, pt
2217
+ end
2218
+
2199
2219
  def test_call_arg_kwsplat
2200
2220
  rb = "a(b, **1)"
2201
2221
  pt = s(:call, nil, :a, s(:call, nil, :b), s(:hash, s(:kwsplat, s(:lit, 1))))
@@ -3429,6 +3449,13 @@ class TestRuby23Parser < RubyParserTestCase
3429
3449
  assert_parse rb, pt
3430
3450
  end
3431
3451
 
3452
+ def test_safe_call_rhs_newline
3453
+ rb = "c = a&.b\n"
3454
+ pt = s(:lasgn, :c, s(:safe_call, s(:call, nil, :a), :b))
3455
+
3456
+ assert_parse rb, pt
3457
+ end
3458
+
3432
3459
  def test_safe_calls
3433
3460
  rb = "a&.b&.c(1)"
3434
3461
  pt = s(:safe_call, s(:safe_call, s(:call, nil, :a), :b), :c, s(:lit, 1))
@@ -3459,7 +3486,21 @@ class TestRuby23Parser < RubyParserTestCase
3459
3486
 
3460
3487
  def test_safe_call_operator
3461
3488
  rb = "a&.> 1"
3462
- pt = s(:safe_call, s(:call, nil, :a), :>, s(:lit, 1))
3489
+ pt = s(:safe_call, s(:call, nil, :a), :>, s(:lit, 1)).line(1)
3490
+
3491
+ assert_parse rb, pt
3492
+ end
3493
+
3494
+ def test_safe_op_asgn
3495
+ rb = "a&.b += x 1\n"
3496
+ pt = s(:safe_op_asgn, s(:call, nil, :a), s(:call, nil, :x, s(:lit, 1)), :b, :+).line(1)
3497
+
3498
+ assert_parse rb, pt
3499
+ end
3500
+
3501
+ def test_safe_op_asgn2
3502
+ rb = "a&.b ||=\nx;"
3503
+ pt = s(:safe_op_asgn2, s(:call, nil, :a), :b=, :"||", s(:call, nil, :x)).line(1)
3463
3504
 
3464
3505
  assert_parse rb, pt
3465
3506
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_parser
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.8.1
4
+ version: 3.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Davis
@@ -29,7 +29,7 @@ cert_chain:
29
29
  qx3h45R1CAsObX0SQDIT+rRbQrtKz1GHIZTOFYvEJjUY1XmRTZupD3CJ8Q7sDqSy
30
30
  NLq5jm1fq6Y9Uolu3RJbmycf
31
31
  -----END CERTIFICATE-----
32
- date: 2016-02-19 00:00:00.000000000 Z
32
+ date: 2016-05-05 00:00:00.000000000 Z
33
33
  dependencies:
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: sexp_processor
@@ -45,20 +45,6 @@ dependencies:
45
45
  - - ~>
46
46
  - !ruby/object:Gem::Version
47
47
  version: '4.1'
48
- - !ruby/object:Gem::Dependency
49
- name: minitest
50
- requirement: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ~>
53
- - !ruby/object:Gem::Version
54
- version: '5.8'
55
- type: :development
56
- prerelease: false
57
- version_requirements: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: '5.8'
62
48
  - !ruby/object:Gem::Dependency
63
49
  name: rdoc
64
50
  requirement: !ruby/object:Gem::Requirement
@@ -121,14 +107,14 @@ dependencies:
121
107
  requirements:
122
108
  - - ~>
123
109
  - !ruby/object:Gem::Version
124
- version: '3.14'
110
+ version: '3.15'
125
111
  type: :development
126
112
  prerelease: false
127
113
  version_requirements: !ruby/object:Gem::Requirement
128
114
  requirements:
129
115
  - - ~>
130
116
  - !ruby/object:Gem::Version
131
- version: '3.14'
117
+ version: '3.15'
132
118
  description: |-
133
119
  ruby_parser (RP) is a ruby parser written in pure ruby (utilizing
134
120
  racc--which does by default use a C extension). RP's output is
metadata.gz.sig CHANGED
Binary file