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

Method testSkillPrereq

code/src/test/pcgen/core/bonus/BonusTest.java:59–98  ·  view source on GitHub ↗

Test the skill pre reqs.

()

Source from the content-addressed store, hash-verified

57 * Test the skill pre reqs.
58 */
59 @Test
60 public void testSkillPrereq()
61 {
62 LoadContext context = Globals.getContext();
63
64 final Skill rideSkill = new Skill();
65 rideSkill.setName("Ride");
66 rideSkill.put(StringKey.KEY_NAME, "Ride");
67 rideSkill.addToListFor(ListKey.TYPE, Type.getConstant("DEX"));
68 context.getReferenceContext().importObject(rideSkill);
69 final Ability skillFocus = new Ability();
70 skillFocus.setName("Skill Focus");
71 skillFocus.put(StringKey.KEY_NAME, "Skill Focus");
72
73 final BonusObj saddleBonus =
74 Bonus.newBonus(context, "SKILL|Ride|-5|!PREITEM:1,TYPE.Saddle");
75 rideSkill.addToListFor(ListKey.BONUS, saddleBonus);
76
77 final Equipment saddle = new Equipment();
78 saddle.setName("Saddle, Test");
79 saddle.addToListFor(ListKey.TYPE, Type.getConstant("SADDLE"));
80
81 finishLoad();
82
83 final PlayerCharacter pc = getCharacter();
84 BonusActivation.activateBonuses(rideSkill, pc);
85 double iBonus = saddleBonus.resolve(pc, "").doubleValue();
86 assertEquals(-5.0, iBonus, 0.05, "Bonus value");
87 BonusObj appliedBonus = rideSkill.getListFor(ListKey.BONUS).get(0);
88 assertTrue(pc.isApplied(appliedBonus), "No saddle, should have a penalty");
89 assertEquals(appliedBonus.toString(), saddleBonus.toString());
90
91 pc.addEquipment(saddle);
92 final EquipSet eqSet = new EquipSet("Test", "Test", "", saddle);
93 pc.addEquipSet(eqSet);
94 pc.calcActiveBonuses();
95 BonusActivation.activateBonuses(rideSkill, pc);
96 assertFalse(pc
97 .isApplied(saddleBonus), "Saddle, should not have a penalty");
98 }
99
100 /**
101 * Test the processing of bonusing variables using both

Callers

nothing calls this directly

Calls 15

getContextMethod · 0.95
getConstantMethod · 0.95
getReferenceContextMethod · 0.95
newBonusMethod · 0.95
setNameMethod · 0.95
activateBonusesMethod · 0.95
resolveMethod · 0.95
isAppliedMethod · 0.95
toStringMethod · 0.95
addEquipmentMethod · 0.95
addEquipSetMethod · 0.95
calcActiveBonusesMethod · 0.95

Tested by

no test coverage detected