Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
4.0.0
Description
CollationSupport.EndsWIth and CollationSupport.StartsWith use CollationAwareUTF8String.matchAt, which operates byte offsets to compare prefixes/suffixes. This is not correct, since sometimes string parts (suffix/prefix) of different lengths are actually equal in context of case-insensitive and lower-case collations.
Example test cases that highlight the problem:
- assertContains("The İo", "i̇o", "UNICODE_CI", true); for CollationSupportSuite.testContains.
- assertEndsWith("The İo", "i̇o", "UNICODE_CI", true); for CollationSupportSuite.testEndsWith.
The first passes, since it uses StringSearch directly, the second one does not.
Attachments
Issue Links
- links to