MCPcopy Create free account
hub / github.com/PCGen/pcgen / testCSkill

Method testCSkill

code/src/test/pcgen/core/prereq/PreCSkillTest.java:57–113  ·  view source on GitHub ↗

Test that CSkill works. @throws PersistenceLayerException the persistence layer exception

()

Source from the content-addressed store, hash-verified

55 * @throws PersistenceLayerException the persistence layer exception
56 */
57 @Test
58 public void testCSkill() throws PersistenceLayerException
59 {
60 final PlayerCharacter character = getCharacter();
61 character.incrementClassLevel(1, myClass, true);
62
63 myClass = character.getClassKeyed("My Class");
64
65 Prerequisite prereq;
66
67 final PreParserFactory factory = PreParserFactory.getInstance();
68 prereq = factory.parse("PRECSKILL:1,Spot,Listen");
69
70 assertFalse("Character has no class skills", PrereqHandler.passes(
71 prereq, character, null));
72
73 character.addLocalCost(myClass, spot, SkillCost.CLASS, myClass);
74 character.setDirty(true); //Need to throw out the cache
75
76 assertTrue("Character has spot class skills", PrereqHandler.passes(
77 prereq, character, null));
78
79 character.addLocalCost(myClass, spy1, SkillCost.CLASS, myClass);
80 character.setDirty(true); //Need to throw out the cache
81
82 assertTrue("Character has spot class skills", PrereqHandler.passes(
83 prereq, character, null));
84
85 prereq = factory.parse("PRECSKILL:2,TYPE.Spy");
86
87 assertFalse("Character has only one Spy Skill", PrereqHandler.passes(
88 prereq, character, null));
89
90 character.addLocalCost(myClass, spy2, SkillCost.CLASS, myClass);
91 character.setDirty(true); //Need to throw out the cache
92
93 assertTrue("Character has 2 Spy class skills", PrereqHandler.passes(
94 prereq, character, null));
95
96 prereq = factory.parse("PRECSKILL:3,Spot,TYPE.Spy");
97
98 assertTrue("Character has 2 Spy and Spot class skills", PrereqHandler
99 .passes(prereq, character, null));
100
101 prereq = factory.parse("PRECSKILL:3,Listen,TYPE.Spy");
102
103 assertFalse("Character has only 2 Spy Skills", PrereqHandler.passes(
104 prereq, character, null));
105
106 character.addLocalCost(myClass, spy3, SkillCost.CLASS, myClass);
107 character.setDirty(true); //Need to throw out the cache
108
109 prereq = factory.parse("PRECSKILL:3,Listen,TYPE.Spy");
110
111 assertTrue("Character has 3 Spy Skills", PrereqHandler.passes(prereq,
112 character, null));
113 }
114

Callers

nothing calls this directly

Calls 8

incrementClassLevelMethod · 0.95
getClassKeyedMethod · 0.95
getInstanceMethod · 0.95
parseMethod · 0.95
passesMethod · 0.95
addLocalCostMethod · 0.95
setDirtyMethod · 0.95
getCharacterMethod · 0.45

Tested by

no test coverage detected