Search in sources :

Example 61 with Race

use of pcgen.core.Race in project pcgen by PCGen.

the class RacialSubTypesFacetTest method testGetFromRaceAndTemplate.

@Test
public void testGetFromRaceAndTemplate() {
    Race r = new Race();
    r.addToListFor(ListKey.RACESUBTYPE, TEST_RACE_TYPE);
    rfacet.set(id, r);
    assertList(facet.getRacialSubTypes(id), TEST_RACE_TYPE);
    PCTemplate t = new PCTemplate();
    t.addToListFor(ListKey.RACESUBTYPE, RACE_TYPE_TOO);
    tfacet.add(id, t, this);
    assertList(facet.getRacialSubTypes(id), TEST_RACE_TYPE, RACE_TYPE_TOO);
    tfacet.remove(id, t, this);
    assertList(facet.getRacialSubTypes(id), TEST_RACE_TYPE);
}
Also used : Race(pcgen.core.Race) PCTemplate(pcgen.core.PCTemplate) Test(org.junit.Test)

Example 62 with Race

use of pcgen.core.Race in project pcgen by PCGen.

the class RacialSubTypesFacetTest method testWithNothingInRace.

@Test
public void testWithNothingInRace() {
    rfacet.set(id, new Race());
    assertSubTypesEmpty();
}
Also used : Race(pcgen.core.Race) Test(org.junit.Test)

Example 63 with Race

use of pcgen.core.Race in project pcgen by PCGen.

the class RaceToken method parseNonEmptyToken.

@Override
protected ParseResult parseNonEmptyToken(LoadContext context, KitRace kitRace, String value) {
    if (Constants.NONESELECTED.equals(value)) {
        ComplexParseResult pr = new ComplexParseResult();
        pr.addWarningMessage("NONESELECTED is not necessary in KIT RACE: " + "Token is not processed");
        return pr;
    }
    CDOMSingleRef<Race> ref = context.getReferenceContext().getCDOMReference(RACE_CLASS, value);
    kitRace.setRace(ref);
    return ParseResult.SUCCESS;
}
Also used : KitRace(pcgen.core.kit.KitRace) Race(pcgen.core.Race) ComplexParseResult(pcgen.rules.persistence.token.ComplexParseResult)

Example 64 with Race

use of pcgen.core.Race in project pcgen by PCGen.

the class SizeFacetTest method testGetFromTemplateHigherOverridesRace.

@Test
public void testGetFromTemplateHigherOverridesRace() {
    Race r = new Race();
    r.put(FormulaKey.SIZE, FormulaFactory.getFormulaFor(3));
    rfacet.set(id, r);
    PCTemplate t1 = new PCTemplate();
    t1.put(FormulaKey.SIZE, FormulaFactory.getFormulaFor(4));
    tfacet.add(id, t1, this);
    facet.update(id);
    assertEquals(4, facet.sizeInt(id));
    tfacet.remove(id, t1, this);
    facet.update(id);
    assertEquals(3, facet.sizeInt(id));
}
Also used : Race(pcgen.core.Race) PCTemplate(pcgen.core.PCTemplate) Test(org.junit.Test)

Example 65 with Race

use of pcgen.core.Race in project pcgen by PCGen.

the class SizeFacetTest method testGetAbbWithBonus.

@Test
public void testGetAbbWithBonus() {
    assertEquals("M", facet.getSizeAbb(id));
    facet.update(id);
    assertEquals("M", facet.getSizeAbb(id));
    Race r = new Race();
    r.put(FormulaKey.SIZE, FormulaFactory.getFormulaFor(1));
    rfacet.set(id, r);
    facet.update(id);
    assertEquals("S", facet.getSizeAbb(id));
    bonusInfo.put(altid, 2.0);
    // No pollution
    facet.update(id);
    assertEquals("S", facet.getSizeAbb(id));
    bonusInfo.put(id, 2.0);
    facet.update(id);
    assertEquals("L", facet.getSizeAbb(id));
    PCTemplate t1 = new PCTemplate();
    t1.setName("PCT");
    t1.put(FormulaKey.SIZE, FormulaFactory.getFormulaFor(0));
    tfacet.add(id, t1, this);
    facet.update(id);
    assertEquals("M", facet.getSizeAbb(id));
    PCTemplate t2 = new PCTemplate();
    t2.setName("Other");
    t2.put(FormulaKey.SIZE, FormulaFactory.getFormulaFor(3));
    tfacet.add(id, t2, this);
    facet.update(id);
    assertEquals("H", facet.getSizeAbb(id));
    tfacet.remove(id, t2, this);
    facet.update(id);
    assertEquals("M", facet.getSizeAbb(id));
    bonusInfo.put(id, -2.0);
    t1.put(FormulaKey.SIZE, FormulaFactory.getFormulaFor(1));
    facet.update(id);
    assertEquals("T", facet.getSizeAbb(id));
    t2.put(FormulaKey.SIZE, FormulaFactory.getFormulaFor(4));
    tfacet.add(id, t2, this);
    facet.update(id);
    assertEquals("M", facet.getSizeAbb(id));
    tfacet.remove(id, t2, this);
    facet.update(id);
    assertEquals("T", facet.getSizeAbb(id));
    bonusInfo.clear();
    facet.update(id);
    assertEquals("S", facet.getSizeAbb(id));
}
Also used : Race(pcgen.core.Race) PCTemplate(pcgen.core.PCTemplate) Test(org.junit.Test)

Aggregations

Race (pcgen.core.Race)167 Test (org.junit.Test)78 PCTemplate (pcgen.core.PCTemplate)66 PlayerCharacter (pcgen.core.PlayerCharacter)28 CDOMObject (pcgen.cdom.base.CDOMObject)16 LoadContext (pcgen.rules.context.LoadContext)16 PCClass (pcgen.core.PCClass)15 ArrayList (java.util.ArrayList)10 SizeAdjustment (pcgen.core.SizeAdjustment)10 ParseResult (pcgen.rules.persistence.token.ParseResult)10 AbstractTokenModelTest (tokenmodel.testsupport.AbstractTokenModelTest)10 PCStat (pcgen.core.PCStat)9 FixedSizeFormula (pcgen.cdom.formula.FixedSizeFormula)8 Equipment (pcgen.core.Equipment)8 BonusObj (pcgen.core.bonus.BonusObj)7 Formula (pcgen.base.formula.Formula)6 WieldCategory (pcgen.core.character.WieldCategory)6 GameMode (pcgen.core.GameMode)5 Skill (pcgen.core.Skill)5 CompanionList (pcgen.cdom.list.CompanionList)4