Search in sources :

Example 21 with Language

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

the class FreeLanguageFacetTest method getObject.

@Override
protected Language getObject() {
    Language t = new Language();
    t.setName("Language" + n++);
    return t;
}
Also used : Language(pcgen.core.Language)

Example 22 with Language

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

the class AbstractGlobalTargetedSaveRestoreTest method testAutoLanguageList.

@Test
public void testAutoLanguageList() {
    T target = create(getObjectClass(), "Target");
    Language granted = create(Language.class, "Granted");
    create(Language.class, "Ignored");
    new plugin.lsttokens.auto.LangToken().parseToken(context, target, "%LIST");
    new plugin.lsttokens.choose.LangToken().parseToken(context, target, "Granted|Ignored");
    additionalChooseSet(target);
    Object o = prepare(target);
    finishLoad();
    assertFalse(pc.hasLanguage(granted));
    applyObject(target);
    assertTrue(pc.hasLanguage(granted));
    runRoundRobin(getPreEqualityCleanup());
    assertTrue(pc.hasLanguage(granted));
    assertTrue(reloadedPC.hasLanguage(granted));
    remove(o);
    reloadedPC.setDirty(true);
    if (isSymmetric()) {
        assertFalse(reloadedPC.hasLanguage(granted));
    }
}
Also used : Language(pcgen.core.Language) CDOMObject(pcgen.cdom.base.CDOMObject) Test(org.junit.Test)

Example 23 with Language

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

the class AbstractGlobalTargetedSaveRestoreTest method testAddLanguage.

//TODO We accept this is not symmetric now due to equipment cloning
//	@Test
//	public void testAutoEquipment()
//	{
//		T target = create(getObjectClass(), "Target");
//		Equipment granted = create(Equipment.class, "Granted");
//		create(Equipment.class, "Ignored");
//		new plugin.lsttokens.auto.EquipToken().parseToken(context, target,
//			"%LIST");
//		new plugin.lsttokens.choose.EquipmentToken().parseToken(context,
//			target, "Granted|Ignored");
//		Object o = prepare(target);
//		finishLoad();
//		assertFalse(pc.getEquipmentMasterList().contains(granted));
//		applyObject(target);
//		assertTrue(pc.getEquipmentMasterList().contains(granted));
//		dumpPC(pc);
//		runRoundRobin();
//		assertTrue(pc.getEquipmentMasterList().contains(granted));
//		assertTrue(reloadedPC.getEquipmentMasterList().contains(granted));
//		remove(o);
//		reloadedPC.setDirty(true);
//		assertFalse(reloadedPC.getEquipmentMasterList().contains(granted));
//	}
@Test
public void testAddLanguage() {
    Language granted = create(Language.class, "MyLanguage");
    create(Language.class, "Ignored");
    T target = create(getObjectClass(), "Target");
    new plugin.lsttokens.add.LanguageToken().parseToken(context, target, "MyLanguage");
    Object o = prepare(target);
    finishLoad();
    assertFalse(pc.hasLanguage(granted));
    applyObject(target);
    assertTrue(pc.hasLanguage(granted));
    runRoundRobin(getPreEqualityCleanup());
    assertTrue(pc.hasLanguage(granted));
    assertTrue(reloadedPC.hasLanguage(granted));
    remove(o);
    reloadedPC.setDirty(true);
    assertFalse(reloadedPC.hasLanguage(granted));
}
Also used : Language(pcgen.core.Language) CDOMObject(pcgen.cdom.base.CDOMObject) Test(org.junit.Test)

Example 24 with Language

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

the class AddTargetedAbilityNormalTest method containsExpected.

@Override
protected boolean containsExpected(Ability granted) {
    Collection<CNAbility> abilities = getTargetFacet().getPoolAbilities(id, AbilityCategory.FEAT, Nature.NORMAL);
    for (CNAbility a : abilities) {
        boolean abilityExpected = a.getAbility().equals(context.getReferenceContext().silentlyGetConstructedCDOMObject(Ability.class, AbilityCategory.FEAT, "Granted"));
        if (abilityExpected) {
            if (pc.getDetailedAssociationCount(a) == 1) {
                if (!pc.getAssociationList(a).get(0).equals("English")) {
                    continue;
                }
                Language english = context.getReferenceContext().silentlyGetConstructedCDOMObject(Language.class, "English");
                languageFacet.contains(id, english);
                return true;
            }
        }
    }
    return false;
}
Also used : CNAbility(pcgen.cdom.content.CNAbility) Ability(pcgen.core.Ability) CNAbility(pcgen.cdom.content.CNAbility) Language(pcgen.core.Language)

Example 25 with Language

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

the class AutoLangListTest method testFromAbility.

@Test
public void testFromAbility() throws PersistenceLayerException {
    Ability source = create(Ability.class, "Source");
    ParseResult result = new MultToken().parseToken(context, source, "YES");
    if (result != ParseResult.SUCCESS) {
        result.printMessages();
        fail("Test Setup Failed");
    }
    context.getReferenceContext().reassociateCategory(AbilityCategory.FEAT, source);
    Language granted = createGrantedObject();
    processToken(source);
    assertEquals(0, getCount());
    CNAbilitySelection cas = new CNAbilitySelection(CNAbilityFactory.getCNAbility(AbilityCategory.FEAT, Nature.AUTOMATIC, source), "Granted");
    directAbilityFacet.add(id, cas, UserSelection.getInstance());
    assertTrue(containsExpected(granted));
    assertEquals(1, getCount());
    directAbilityFacet.remove(id, cas, UserSelection.getInstance());
    assertEquals(0, getCount());
    assertTrue(cleanedSideEffects());
}
Also used : Ability(pcgen.core.Ability) ParseResult(pcgen.rules.persistence.token.ParseResult) Language(pcgen.core.Language) CNAbilitySelection(pcgen.cdom.helper.CNAbilitySelection) MultToken(plugin.lsttokens.ability.MultToken) Test(org.junit.Test) AbstractTokenModelTest(tokenmodel.testsupport.AbstractTokenModelTest)

Aggregations

Language (pcgen.core.Language)37 ArrayList (java.util.ArrayList)9 Test (org.junit.Test)9 CDOMObject (pcgen.cdom.base.CDOMObject)7 CNAbility (pcgen.cdom.content.CNAbility)7 ParseResult (pcgen.rules.persistence.token.ParseResult)6 AbstractTokenModelTest (tokenmodel.testsupport.AbstractTokenModelTest)6 Ability (pcgen.core.Ability)5 PCTemplate (pcgen.core.PCTemplate)4 StringTokenizer (java.util.StringTokenizer)3 CDOMReference (pcgen.cdom.base.CDOMReference)3 Race (pcgen.core.Race)3 ChooseSelectionActor (pcgen.cdom.base.ChooseSelectionActor)2 CharID (pcgen.cdom.enumeration.CharID)2 QualifiedObject (pcgen.core.QualifiedObject)2 PCLevelInfo (pcgen.core.pclevelinfo.PCLevelInfo)2 Prerequisite (pcgen.core.prereq.Prerequisite)2 LanguageFacade (pcgen.facade.core.LanguageFacade)2 PersistenceLayerException (pcgen.persistence.PersistenceLayerException)2 StringWriter (java.io.StringWriter)1