public void testTwoDimensionPermWithExpansion() {
ModuleDef md = new ModuleDef("testTwoDimensionsWithExpansion");
Properties props = md.getProperties();
{
BindingProperty prop = props.createBinding("user.agent");
prop.addDefinedValue(prop.getRootCondition(), "moz");
prop.addDefinedValue(prop.getRootCondition(), "ie6");
prop.addDefinedValue(prop.getRootCondition(), "ie8");
prop.addDefinedValue(prop.getRootCondition(), "opera");
}
{
BindingProperty prop = props.createBinding("stackTraces");
prop.addDefinedValue(prop.getRootCondition(), "false");
prop.addDefinedValue(prop.getRootCondition(), "true");
// <set-property name="stackTraces" value="false" />
prop.setValues(prop.getRootCondition(), "false");
/*
* <set-property name="stackTraces" value="true,false"> <when user.agent
* is ie6 or ie 8> </set-property>
*/
ConditionAny cond = new ConditionAny();
cond.getConditions().add(new ConditionWhenPropertyIs("user.agent", "ie6"));
cond.getConditions().add(new ConditionWhenPropertyIs("user.agent", "ie8"));
prop.setValues(cond, "true", "false");
}
validateTwoDimensionPerm(props, md.getActiveLinkerNames());
}