Closed
Description
Running TurkishI_Is_Differently_LowerUpperCased_In_Turkish_Culture_NonBacktracking
with HG fails on
Assert.True(cultInvariantRegex.IsMatch(input.ToUpperInvariant()));
Because ToUpperInvariant
produces different string (differently normalized?), the regex fails. Maybe we can keep using managed invariant functions for invariant culture. If not, we have to treat this failure as a known difference between platforms.
input.ToUpperInvariant() -> HG: IIİI, ICU: IıİI
This is expected behavior of JS and generally, it's expected behavior for Turkish letters.
We can preserve C#-invariant behavior if we use ToUpper/Lower methods that are used for InvaraintGlobalization
.