@@ -52,5 +52,37 @@ public void worksWithoutExcluded() {
5252 RuleBasedSegmentsToUpdate toUpdate = processRuleBasedSegmentChanges (parser , change .ruleBasedSegments .d );
5353 Assert .assertTrue (toUpdate .getToAdd ().get (0 ).excludedKeys ().isEmpty ());
5454 Assert .assertTrue (toUpdate .getToAdd ().get (0 ).excludedSegments ().isEmpty ());
55+
56+ load = "{\" ff\" :{\" s\" :-1,\" t\" :-1,\" d\" :[]},\" rbs\" :{\" s\" :-1,\" t\" :1457726098069,\" d\" :[{ \" changeNumber\" : 123, \" trafficTypeName\" : \" user\" , \" name\" : \" some_name\" ,"
57+ + "\" status\" : \" ACTIVE\" ,\" excluded\" :{\" segments\" :[\" segment1\" ]},\" conditions\" : [{\" contitionType\" : \" ROLLOUT\" ,"
58+ + "\" label\" : \" some_label\" , \" matcherGroup\" : { \" matchers\" : [{ \" matcherType\" : \" ALL_KEYS\" , \" negate\" : false}],"
59+ + "\" combiner\" : \" AND\" }}]}]}}" ;
60+ change = Json .fromJson (load , SplitChange .class );
61+ toUpdate = processRuleBasedSegmentChanges (parser , change .ruleBasedSegments .d );
62+ Assert .assertTrue (toUpdate .getToAdd ().get (0 ).excludedKeys ().isEmpty ());
63+
64+ load = "{\" ff\" :{\" s\" :-1,\" t\" :-1,\" d\" :[]},\" rbs\" :{\" s\" :-1,\" t\" :1457726098069,\" d\" :[{ \" changeNumber\" : 123, \" trafficTypeName\" : \" user\" , \" name\" : \" some_name\" ,"
65+ + "\" status\" : \" ACTIVE\" ,\" excluded\" :{\" segments\" :[\" segment1\" ], \" keys\" :null},\" conditions\" : [{\" contitionType\" : \" ROLLOUT\" ,"
66+ + "\" label\" : \" some_label\" , \" matcherGroup\" : { \" matchers\" : [{ \" matcherType\" : \" ALL_KEYS\" , \" negate\" : false}],"
67+ + "\" combiner\" : \" AND\" }}]}]}}" ;
68+ change = Json .fromJson (load , SplitChange .class );
69+ toUpdate = processRuleBasedSegmentChanges (parser , change .ruleBasedSegments .d );
70+ Assert .assertTrue (toUpdate .getToAdd ().get (0 ).excludedKeys ().isEmpty ());
71+
72+ load = "{\" ff\" :{\" s\" :-1,\" t\" :-1,\" d\" :[]},\" rbs\" :{\" s\" :-1,\" t\" :1457726098069,\" d\" :[{ \" changeNumber\" : 123, \" trafficTypeName\" : \" user\" , \" name\" : \" some_name\" ,"
73+ + "\" status\" : \" ACTIVE\" ,\" excluded\" :{\" keys\" :[\" key1\" ]},\" conditions\" : [{\" contitionType\" : \" ROLLOUT\" ,"
74+ + "\" label\" : \" some_label\" , \" matcherGroup\" : { \" matchers\" : [{ \" matcherType\" : \" ALL_KEYS\" , \" negate\" : false}],"
75+ + "\" combiner\" : \" AND\" }}]}]}}" ;
76+ change = Json .fromJson (load , SplitChange .class );
77+ toUpdate = processRuleBasedSegmentChanges (parser , change .ruleBasedSegments .d );
78+ Assert .assertTrue (toUpdate .getToAdd ().get (0 ).excludedSegments ().isEmpty ());
79+
80+ load = "{\" ff\" :{\" s\" :-1,\" t\" :-1,\" d\" :[]},\" rbs\" :{\" s\" :-1,\" t\" :1457726098069,\" d\" :[{ \" changeNumber\" : 123, \" trafficTypeName\" : \" user\" , \" name\" : \" some_name\" ,"
81+ + "\" status\" : \" ACTIVE\" ,\" excluded\" :{\" segments\" :null, \" keys\" :[\" key1\" ]},\" conditions\" : [{\" contitionType\" : \" ROLLOUT\" ,"
82+ + "\" label\" : \" some_label\" , \" matcherGroup\" : { \" matchers\" : [{ \" matcherType\" : \" ALL_KEYS\" , \" negate\" : false}],"
83+ + "\" combiner\" : \" AND\" }}]}]}}" ;
84+ change = Json .fromJson (load , SplitChange .class );
85+ toUpdate = processRuleBasedSegmentChanges (parser , change .ruleBasedSegments .d );
86+ Assert .assertTrue (toUpdate .getToAdd ().get (0 ).excludedSegments ().isEmpty ());
5587 }
5688}
0 commit comments