public void testConditional() { Ability source = create(Ability.class, "Source"); context.ref.reassociateCategory(AbilityCategory.FEAT, source); ParseResult result = token.parseToken(context, source, "CLASS|Wizard=2|Fireball|PREVARLTEQ:3,MyCasterLevel"); if (result != ParseResult.SUCCESS) { result.printMessages(); fail("Test Setup Failed"); } finishLoad(); assertEquals(baseCount(), targetFacetCount()); CategorizedAbilitySelection cas = new CategorizedAbilitySelection(AbilityCategory.FEAT, source, Nature.AUTOMATIC); directAbilityFacet.add(id, cas); assertFalse(containsExpected()); PCTemplate varsource = create(PCTemplate.class, "VarSource"); varsource.put(VariableKey.getConstant("MyCasterLevel"), FormulaFactory.getFormulaFor(4.0)); Selection<PCTemplate, ?> sel = new Selection<PCTemplate, Object>(varsource, null); templateFacet.add(id, sel, this); // pc.setDirty(true); assertTrue(containsExpected()); assertEquals(baseCount() + 1, targetFacetCount()); directAbilityFacet.remove(id, cas); pc.setDirty(true); assertEquals(baseCount(), targetFacetCount()); }
@Override public void processToken(CDOMObject source) { ParseResult result = token.parseToken(context, source, "CLASS|Wizard=2|Fireball"); if (result != ParseResult.SUCCESS) { result.printMessages(); fail("Test Setup Failed"); } finishLoad(); }