From bb59696614083660241ef272f222628cbfa95844 Mon Sep 17 00:00:00 2001 From: Hiroya Fujinami Date: Fri, 29 Dec 2023 19:30:24 +0900 Subject: Fix [Bug #20098]: set counter value for {n,m} repetition correctly (#9391) --- test/ruby/test_regexp.rb | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_regexp.rb b/test/ruby/test_regexp.rb index b889b1a64e..be563dfa52 100644 --- a/test/ruby/test_regexp.rb +++ b/test/ruby/test_regexp.rb @@ -1987,6 +1987,14 @@ class TestRegexp < Test::Unit::TestCase end end + def test_bug_20098 # [Bug #20098] + assert /a((.|.)|bc){,4}z/.match? 'abcbcbcbcz' + assert /a(b+?c*){4,5}z/.match? 'abbbccbbbccbcbcz' + assert /a(b+?(.|.)){2,3}z/.match? 'abbbcbbbcbbbcz' + assert /a(b*?(.|.)[bc]){2,5}z/.match? 'abcbbbcbcccbcz' + assert /^(?:.+){2,4}?b|b/.match? "aaaabaa" + end + def test_linear_time_p assert_send [Regexp, :linear_time?, /a/] assert_send [Regexp, :linear_time?, 'a'] -- cgit v1.2.3