Christoph Thiede uploaded a new version of Regex-Tests-Core to project The Trunk: http://source.squeak.org/trunk/Regex-Tests-Core-ct.36.mcz
==================== Summary ====================
Name: Regex-Tests-Core-ct.36 Author: ct Time: 1 May 2024, 6:09:32.080028 pm UUID: b163c0fb-36ce-4b29-b751-97759ff56c37 Ancestors: Regex-Tests-Core-mt.35
Fixes expected order of keyed subexpressions to be top-down and left-to-right. Documents significant edge case of empty keyed subexpressions.
=============== Diff against Regex-Tests-Core-mt.35 ===============
Item was changed: ----- Method: RxMatcherTest>>testKeyedSubexpressions (in category 'testing-protocol') ----- testKeyedSubexpressions
{ #('abc' () ()). #('(\w)+' () ()). {'(?<foo>a)b(c)'. #(foo ('a')). {#foo. {1 to: 1}}}. {'(?<foo>\w+)'. #(foo ('abc')). {#foo. {1 to: 3}}}. {'(?<foo>\w)+'. #(foo ('a' 'b' 'c')). {#foo. {1 to: 1. 2 to: 2. 3 to: 3}}}. + {'(?<foo>((?<foo>b)|(?<foo>[^b]))+)'. #(foo ('abc' 'a' 'b' 'c')). {#foo. {1 to: 3. 1 to: 1. 2 to: 2. 3 to: 3}}}. + #('abc(?<foo>\w)?' (foo ()) (foo ())). + {'(?<foo>)(?<foo>\w)*(?<foo>)'. #(foo ('' 'a' 'b' 'c' '')). {#foo. {1 to: 0. 1 to: 1. 2 to: 2. 3 to: 3. 4 to: 3}}}. - {'(?<foo>((?<foo>b)|(?<foo>[^b]))+)'. #(foo ('a' 'b' 'c' 'abc' )). {#foo. {1 to: 1. 2 to: 2. 3 to: 3. 1 to: 3}}}. - #('abc(?<foo>\w)?' (foo ()) (foo ())) } do: [:spec | | matcher | matcher := spec first asRegex. self assert: (matcher matches: 'abc'). self assert: (Dictionary newFromPairs: spec second) equals: matcher allKeyedSubexpressions. self assert: (Dictionary newFromPairs: spec third) associations equals: (matcher keyedMarkers collect: [:key | key -> (matcher keyedSubexpressionRanges: key) asArray])].!
packages@lists.squeakfoundation.org