()
| 263 | } |
| 264 | |
| 265 | @Test |
| 266 | public void testJepIf() |
| 267 | { |
| 268 | final PlayerCharacter character = new PlayerCharacter(); |
| 269 | Float val; |
| 270 | val = character.getVariableValue("var(\"UseAlternateDamage\")", ""); |
| 271 | assertEquals(0.0, val |
| 272 | .doubleValue(), 0.1, "Undefined variable should return 0"); |
| 273 | |
| 274 | Race giantRace = TestHelper.makeRace("Ogre"); |
| 275 | giantRace.put(VariableKey.getConstant("UseAlternateDamage"), |
| 276 | FormulaFactory.getFormulaFor(2)); |
| 277 | character.setRace(giantRace); |
| 278 | |
| 279 | val = character.getVariableValue("var(\"UseAlternateDamage\")", ""); |
| 280 | assertEquals(2.0, val.doubleValue(), 0.1, "Variable defined to be 2."); |
| 281 | |
| 282 | val = character.getVariableValue("2==2", ""); |
| 283 | assertEquals(1.0, val |
| 284 | .doubleValue(), 0.1, "Equality test of 2==2 should be true."); |
| 285 | |
| 286 | val = character.getVariableValue("3-1==2", ""); |
| 287 | assertEquals(1.0, val |
| 288 | .doubleValue(), 0.1, "Equality test of 3-1==2 should be true."); |
| 289 | |
| 290 | val = character.getVariableValue("var(\"UseAlternateDamage\")>1", ""); |
| 291 | assertEquals(1.0, val |
| 292 | .doubleValue(), 0.1, "Variable defined to be 2 should be more than 1"); |
| 293 | |
| 294 | val = character.getVariableValue("var(\"UseAlternateDamage\")<3", ""); |
| 295 | assertEquals( |
| 296 | 1.0, val.doubleValue(), 0.1, "Variable defined to be 2 should be more than 1 be less than 3"); |
| 297 | |
| 298 | val = character.getVariableValue("var(\"UseAlternateDamage\")==1", ""); |
| 299 | assertEquals(0.0, |
| 300 | val.doubleValue(), 0.1, "Variable defined to be 2 should not be equal to 1" |
| 301 | ); |
| 302 | |
| 303 | val = character.getVariableValue("var(\"UseAlternateDamage\")>=2", ""); |
| 304 | assertEquals(1.0, val |
| 305 | .doubleValue(), 0.1, "Variable defined to be 2 should be >= 2"); |
| 306 | |
| 307 | val = character.getVariableValue("var(\"UseAlternateDamage\")<=2", ""); |
| 308 | assertEquals(1.0, val |
| 309 | .doubleValue(), 0.1, "Variable defined to be 2 should be <= 2"); |
| 310 | |
| 311 | val = character.getVariableValue("var(\"UseAlternateDamage\")==2", ""); |
| 312 | assertEquals(1.0, val |
| 313 | .doubleValue(), 0.1, "Variable defined to be 2 should be == 2"); |
| 314 | |
| 315 | val = |
| 316 | character.getVariableValue( |
| 317 | "IF(var(\"UseAlternateDamage\")==2,-2,5)", ""); |
| 318 | assertEquals(-2, val.doubleValue(), 0.1, "Test should have returned -2"); |
| 319 | } |
| 320 | } |
nothing calls this directly
no test coverage detected