use of pcgen.core.Ability in project pcgen by PCGen.
the class AbilityIntegrationTest method testRoundRobinMixed.
@Test
public void testRoundRobinMixed() throws PersistenceLayerException {
verifyCleanStart();
Ability ab = primaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil1");
primaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = secondaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil1");
secondaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = primaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil2");
primaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = secondaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil2");
secondaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
TestContext tc = new TestContext();
commit(testCampaign, tc, "FEAT|VIRTUAL|.CLEAR.Abil2|Abil1");
commit(modCampaign, tc, "FEAT|AUTOMATIC|.CLEAR.Abil1|Abil2");
completeRoundRobin(tc);
}
use of pcgen.core.Ability in project pcgen by PCGen.
the class AbilityIntegrationTest method testRoundRobinClearOrder.
@Test
public void testRoundRobinClearOrder() throws PersistenceLayerException {
verifyCleanStart();
Ability ab = primaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil1");
primaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = secondaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil1");
secondaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = primaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil2");
primaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = secondaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil2");
secondaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
TestContext tc = new TestContext();
commit(testCampaign, tc, "FEAT|VIRTUAL|.CLEAR", "FEAT|VIRTUAL|Abil1|Abil2");
commit(modCampaign, tc, "FEAT|VIRTUAL|.CLEAR");
completeRoundRobin(tc);
}
use of pcgen.core.Ability in project pcgen by PCGen.
the class AbilityIntegrationTest method testRoundRobinNoReset.
@Test
public void testRoundRobinNoReset() throws PersistenceLayerException {
verifyCleanStart();
Ability ab = primaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil1");
primaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = secondaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil1");
secondaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = primaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil2");
primaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = secondaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil2");
secondaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
TestContext tc = new TestContext();
commit(testCampaign, tc, "FEAT|VIRTUAL|Abil1|Abil2");
emptyCommit(modCampaign, tc);
completeRoundRobin(tc);
}
use of pcgen.core.Ability in project pcgen by PCGen.
the class AbilityIntegrationTest method testRoundRobinSimple.
@Test
public void testRoundRobinSimple() throws PersistenceLayerException {
verifyCleanStart();
Ability ab = primaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil1");
primaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = secondaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil1");
secondaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = primaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil2");
primaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
ab = secondaryContext.getReferenceContext().constructCDOMObject(Ability.class, "Abil2");
secondaryContext.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, ab);
TestContext tc = new TestContext();
commit(testCampaign, tc, "FEAT|NORMAL|Abil1");
commit(modCampaign, tc, "FEAT|VIRTUAL|TYPE=TestType");
completeRoundRobin(tc);
}
use of pcgen.core.Ability in project pcgen by PCGen.
the class AddAbilityVirtualTest method testMult.
@Test
public void testMult() throws PersistenceLayerException {
TokenRegistration.register(new NoChoiceToken());
TokenRegistration.register(new StackToken());
Domain source = create(Domain.class, "Source");
PCClass pcc = create(PCClass.class, "Class");
Ability a = createGrantedObject();
context.unconditionallyProcess(a, "MULT", "YES");
context.unconditionallyProcess(a, "STACK", "YES");
context.unconditionallyProcess(a, "CHOOSE", "NOCHOICE");
runToken(source);
processToken(source);
assocCheck = new AssocCheck() {
public boolean check(CNAbility g) {
if (pc.getDetailedAssociationCount(g) == 2) {
return true;
} else {
System.err.println("Incorrect Association Count");
return false;
}
}
};
assertEquals(0, getCount());
ClassSource classSource = new ClassSource(pcc);
domainFacet.add(id, source, classSource);
assertTrue(containsExpected(a));
assertEquals(2, getCount());
domainFacet.remove(id, source);
assertEquals(0, getCount());
}
Aggregations