@@ -474,6 +474,7 @@ private void assertOffsetLimitEdgeCases(OffsetLimitFunction function) {
474474 public void testString () {
475475 List <TestEntity > entities = putTestEntitiesStrings ();
476476 int count = entities .size ();
477+
477478 try (Query <TestEntity > equal = box .query ()
478479 .equal (simpleString , "banana" , StringOrder .CASE_INSENSITIVE )
479480 .build ()) {
@@ -490,11 +491,25 @@ public void testString() {
490491 .build ()) {
491492 assertEquals (4 , getUniqueNotNull (startsEndsWith ).getId ());
492493 }
494+
495+ // contains
493496 try (Query <TestEntity > contains = box .query ()
494497 .contains (simpleString , "nana" , StringOrder .CASE_INSENSITIVE )
495498 .build ()) {
496499 assertEquals (2 , contains .count ());
497500 }
501+ // Verify case-sensitive setting has no side effects for non-ASCII characters
502+ box .put (createTestEntity ("Îñţérñåţîöñåļîžåţîờñ is key" , 6 ));
503+ try (Query <TestEntity > contains = box .query ()
504+ .contains (simpleString , "Îñţérñåţîöñåļîžåţîờñ" , StringOrder .CASE_SENSITIVE )
505+ .build ()) {
506+ assertEquals (1 , contains .count ());
507+ }
508+ try (Query <TestEntity > contains = box .query ()
509+ .contains (simpleString , "Îñţérñåţîöñåļîžåţîờñ" , StringOrder .CASE_INSENSITIVE )
510+ .build ()) {
511+ assertEquals (1 , contains .count ());
512+ }
498513 }
499514
500515 @ Test
0 commit comments