@@ -440,6 +440,90 @@ public void testCount() {
440440 assertEquals (6 , stringQuery .distinct ().count ());
441441 }
442442
443+ @ Test
444+ public void testStringLess () {
445+ putTestEntitiesStrings ();
446+ putTestEntity ("BaNaNa Split" , 100 );
447+ Query <TestEntity > query = box .query ().less (simpleString , "banana juice" ).order (simpleString ).build ();
448+ List <TestEntity > entities = query .find ();
449+ assertEquals (2 , entities .size ());
450+ assertEquals ("apple" , entities .get (0 ).getSimpleString ());
451+ assertEquals ("banana" , entities .get (1 ).getSimpleString ());
452+
453+ query .setParameter (simpleString , "BANANA MZ" );
454+ entities = query .find ();
455+ assertEquals (3 , entities .size ());
456+ assertEquals ("apple" , entities .get (0 ).getSimpleString ());
457+ assertEquals ("banana" , entities .get (1 ).getSimpleString ());
458+ assertEquals ("banana milk shake" , entities .get (2 ).getSimpleString ());
459+
460+ // Case sensitive
461+ query = box .query ().less (simpleString , "BANANA" , StringOrder .CASE_SENSITIVE ).order (simpleString ).build ();
462+ assertEquals (0 , query .count ());
463+
464+ query .setParameter (simpleString , "banana a" );
465+ entities = query .find ();
466+ assertEquals (3 , entities .size ());
467+ assertEquals ("apple" , entities .get (0 ).getSimpleString ());
468+ assertEquals ("banana" , entities .get (1 ).getSimpleString ());
469+ assertEquals ("BaNaNa Split" , entities .get (2 ).getSimpleString ());
470+ }
471+
472+ @ Test
473+ public void testStringGreater () {
474+ putTestEntitiesStrings ();
475+ putTestEntity ("FOO" , 100 );
476+ Query <TestEntity > query = box .query ().greater (simpleString , "banana juice" ).order (simpleString ).build ();
477+ List <TestEntity > entities = query .find ();
478+ assertEquals (4 , entities .size ());
479+ assertEquals ("banana milk shake" , entities .get (0 ).getSimpleString ());
480+ assertEquals ("bar" , entities .get (1 ).getSimpleString ());
481+ assertEquals ("FOO" , entities .get (2 ).getSimpleString ());
482+ assertEquals ("foo bar" , entities .get (3 ).getSimpleString ());
483+
484+ query .setParameter (simpleString , "FO" );
485+ entities = query .find ();
486+ assertEquals (2 , entities .size ());
487+ assertEquals ("FOO" , entities .get (0 ).getSimpleString ());
488+ assertEquals ("foo bar" , entities .get (1 ).getSimpleString ());
489+
490+ // Case sensitive
491+ query = box .query ().greater (simpleString , "banana" , StringOrder .CASE_SENSITIVE ).order (simpleString ).build ();
492+ entities = query .find ();
493+ assertEquals (3 , entities .size ());
494+ assertEquals ("banana milk shake" , entities .get (0 ).getSimpleString ());
495+ assertEquals ("bar" , entities .get (1 ).getSimpleString ());
496+ assertEquals ("foo bar" , entities .get (2 ).getSimpleString ());
497+ }
498+
499+ @ Test
500+ public void testStringIn () {
501+ putTestEntitiesStrings ();
502+ putTestEntity ("BAR" , 100 );
503+ String [] values = {"bar" , "foo bar" };
504+ Query <TestEntity > query = box .query ().in (simpleString , values ).order (simpleString , OrderFlags .CASE_SENSITIVE )
505+ .build ();
506+ List <TestEntity > entities = query .find ();
507+ assertEquals (3 , entities .size ());
508+ assertEquals ("BAR" , entities .get (0 ).getSimpleString ());
509+ assertEquals ("bar" , entities .get (1 ).getSimpleString ());
510+ assertEquals ("foo bar" , entities .get (2 ).getSimpleString ());
511+
512+ String [] values2 = {"bar" };
513+ query .setParameters (simpleString , values2 );
514+ entities = query .find ();
515+ assertEquals (2 , entities .size ());
516+ assertEquals ("BAR" , entities .get (0 ).getSimpleString ());
517+ assertEquals ("bar" , entities .get (1 ).getSimpleString ());
518+
519+ // Case sensitive
520+ query = box .query ().in (simpleString , values , StringOrder .CASE_SENSITIVE ).order (simpleString ).build ();
521+ entities = query .find ();
522+ assertEquals (2 , entities .size ());
523+ assertEquals ("bar" , entities .get (0 ).getSimpleString ());
524+ assertEquals ("foo bar" , entities .get (1 ).getSimpleString ());
525+ }
526+
443527 private List <TestEntity > putTestEntitiesScalars () {
444528 return putTestEntities (10 , null , 2000 );
445529 }
0 commit comments