Skip to content

Commit cfcd5f2

Browse files
committed
Add test_parse_statements_complex_condition_in_for
1 parent 7d99dc7 commit cfcd5f2

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

test/test_rdoc_parser_ruby.rb

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2446,6 +2446,37 @@ class DateTime < Date
24462446
assert_equal :private, date_time_now.visibility, date_time_now.full_name
24472447
end
24482448

2449+
def test_parse_statements_complex_condition_in_for
2450+
util_parser <<RUBY
2451+
class Foo
2452+
def blah()
2453+
for i in (k+1)...n do
2454+
end
2455+
for i in (k+1)...n
2456+
end
2457+
end
2458+
end
2459+
RUBY
2460+
2461+
expected = <<EXPTECTED
2462+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">blah</span>()
2463+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">i</span> <span class="ruby-keyword">in</span> (<span class="ruby-identifier">k</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>)<span class="ruby-operator">...</span><span class="ruby-identifier">n</span> <span class="ruby-keyword">do</span>
2464+
<span class="ruby-keyword">end</span>
2465+
<span class="ruby-keyword">for</span> <span class="ruby-identifier">i</span> <span class="ruby-keyword">in</span> (<span class="ruby-identifier">k</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>)<span class="ruby-operator">...</span><span class="ruby-identifier">n</span>
2466+
<span class="ruby-keyword">end</span>
2467+
<span class="ruby-keyword">end</span>
2468+
EXPTECTED
2469+
expected = expected.rstrip
2470+
2471+
@parser.scan
2472+
2473+
foo = @top_level.classes.first
2474+
assert_equal 'Foo', foo.full_name
2475+
2476+
blah = foo.method_list.first
2477+
assert_includes blah.markup_code, expected
2478+
end
2479+
24492480
def test_parse_require_dynamic_string
24502481
content = <<-RUBY
24512482
prefix = 'path'

0 commit comments

Comments
 (0)