abcTestConstants.put("ANOTHER_NUM", Integer.valueOf(5));
abcTestConstants.put("SOME_NUM", Integer.valueOf(1));
final List<Allocation> abcAllocations = Collections.singletonList(new Allocation(null, Arrays.asList(new Range[] { new Range(abcBucket0.getValue(), 1) })));
/**
final int id, final int version, final String rule, final TestType testType, final String salt, final List<TestBucket> buckets, final List<RuleRatio> ratios,
final Map<String, Object> constants, final String description) {
*/
final ConsumableTestDefinition abcTD = new ConsumableTestDefinition("1", "${num > SOME_NUM && num < ANOTHER_NUM}", TestType.ANONYMOUS_USER, "abcsalt", abcBuckets, abcAllocations, abcTestConstants, "zingle boppity zip zop");
final TestBucket defBucket0 = new TestBucket("control", 0, "control description", null);
final TestBucket defBucket1 = new TestBucket("test1", 1, "test1 description", null);
final TestBucket defBucket2 = new TestBucket("test2", 2, "test2 description", null);
final List<TestBucket> defBuckets = Lists.newArrayList(defBucket0, defBucket1, defBucket2);
final Map<String, Object> defTestConstants = Maps.newHashMap();
defTestConstants.put("T", Boolean.TRUE);
defTestConstants.put("COUNTRIES", Sets.newHashSet("AE", "IO", "UY"));
final List<Allocation> defAllocations = Collections.singletonList(new Allocation(null, Arrays.asList(new Range[] {
new Range(defBucket0.getValue(), 1/3f),
new Range(defBucket1.getValue(), 1/3f),
new Range(defBucket2.getValue(), 1/3f),
})));
final ConsumableTestDefinition defTD = new ConsumableTestDefinition("2", "${proctor:contains(COUNTRIES, country) && T}", TestType.ANONYMOUS_USER, "defsalt", defBuckets, defAllocations, defTestConstants, "finkle fangle foop");
final TestBucket ghiBucket0 = new TestBucket("inactive", -1, "inactive description", null);
final TestBucket ghiBucket1 = new TestBucket("control", 0, "control desc", null);
final TestBucket ghiBucket2 = new TestBucket("optionA", 1, "option A desc", null);
final TestBucket ghiBucket3 = new TestBucket("optionB", 2, "option B desc", null);
final TestBucket ghiBucket4 = new TestBucket("optionC", 3, "option C desc", null);
final List<TestBucket> ghiBuckets = Lists.newArrayList(ghiBucket0, ghiBucket1, ghiBucket2, ghiBucket3, ghiBucket4);
final Map<String, Object> ghiTestConstants = Maps.newHashMap();
ghiTestConstants.put("LANGUAGES", Sets.newHashSet("es", "fr", "pt", "nl"));
ghiTestConstants.put("COUNTRIES", Sets.newHashSet("AE", "IO", "UY"));
final List<Allocation> ghiAllocations = Collections.singletonList(new Allocation(null,
Arrays.asList(new Range[] {
new Range(ghiBucket0.getValue(), 0.2),
new Range(ghiBucket1.getValue(), 0.2),
new Range(ghiBucket2.getValue(), 0.2),
new Range(ghiBucket3.getValue(), 0.2),
new Range(ghiBucket4.getValue(), 0.2),
})));
final ConsumableTestDefinition ghiTD = new ConsumableTestDefinition("3", "${proctor:contains(LANGUAGES, language)}", TestType.ANONYMOUS_USER, "ghisalt", ghiBuckets, ghiAllocations, ghiTestConstants, "jangle bing zimple plop");
final Map<String, ConsumableTestDefinition> tests = Maps.newLinkedHashMap();
tests.put("abc", abcTD);
tests.put("def", defTD);
tests.put("ghi", ghiTD);