@@ -584,5 +584,78 @@ public void testLocaleWithDifferentCodes() {
584584 assertNotNull ("Query should not be null for locale " + locale , result );
585585 }
586586 }
587+
588+ // ---------------- VARIANTS ----------------
589+
590+ @ Test
591+ public void testVariantsSingle () {
592+ Query result = query .variants ("variantA" );
593+ assertNotNull (result );
594+ assertEquals ("variantA" , query .getHeaders ().get ("x-cs-variant-uid" ));
595+ assertNull (query .getHeaders ().get ("branch" ));
596+ }
597+
598+ @ Test
599+ public void testVariantsArray () {
600+ Query result = query .variants (new String []{"v1" , "v2" , "v3" });
601+ assertNotNull (result );
602+ assertEquals ("v1, v2, v3" , query .getHeaders ().get ("x-cs-variant-uid" ));
603+ assertNull (query .getHeaders ().get ("branch" ));
604+ }
605+
606+ @ Test
607+ public void testVariantsArrayFiltersNullsAndBlanks () {
608+ query .variants (new String []{"v1" , null , " " , "v2" });
609+ assertEquals ("v1, v2" , query .getHeaders ().get ("x-cs-variant-uid" ));
610+ }
611+
612+ @ Test
613+ public void testVariantsSingleWithBranch () {
614+ Query result = query .variants ("variantA" , "my-branch" );
615+ assertNotNull (result );
616+ assertEquals ("variantA" , query .getHeaders ().get ("x-cs-variant-uid" ));
617+ assertEquals ("my-branch" , query .getHeaders ().get ("branch" ));
618+ }
619+
620+ @ Test
621+ public void testVariantsArrayWithBranch () {
622+ Query result = query .variants (new String []{"v1" , "v2" }, "feature-branch" );
623+ assertNotNull (result );
624+ assertEquals ("v1, v2" , query .getHeaders ().get ("x-cs-variant-uid" ));
625+ assertEquals ("feature-branch" , query .getHeaders ().get ("branch" ));
626+ }
627+
628+ @ Test
629+ public void testVariantsSingleWithNullBranchDoesNotSetBranchHeader () {
630+ query .variants ("variantA" , null );
631+ assertEquals ("variantA" , query .getHeaders ().get ("x-cs-variant-uid" ));
632+ assertNull (query .getHeaders ().get ("branch" ));
633+ }
634+
635+ @ Test
636+ public void testVariantsArrayWithNullBranchDoesNotSetBranchHeader () {
637+ query .variants (new String []{"v1" , "v2" }, null );
638+ assertEquals ("v1, v2" , query .getHeaders ().get ("x-cs-variant-uid" ));
639+ assertNull (query .getHeaders ().get ("branch" ));
640+ }
641+
642+ @ Test
643+ public void testVariantsSingleWithEmptyBranchDoesNotSetBranchHeader () {
644+ query .variants ("variantA" , " " );
645+ assertEquals ("variantA" , query .getHeaders ().get ("x-cs-variant-uid" ));
646+ assertNull (query .getHeaders ().get ("branch" ));
647+ }
648+
649+ @ Test
650+ public void testVariantsNullSingleDoesNotSetHeader () {
651+ query .variants ((String ) null );
652+ assertNull (query .getHeaders ().get ("x-cs-variant-uid" ));
653+ }
654+
655+ @ Test
656+ public void testVariantsEmptyArrayDoesNotSetHeader () {
657+ query .variants (new String []{});
658+ assertNull (query .getHeaders ().get ("x-cs-variant-uid" ));
659+ }
587660}
588661
0 commit comments