protected double calculateAggressionMod(Entity movingUnit, MovePath path, IGame game, StringBuilder formula) { double distToEnemy = distanceToClosestEnemy(movingUnit, path.getFinalCoords(), game); if ((distToEnemy == 0) && !(movingUnit instanceof Infantry)) { distToEnemy = 2; } double aggression = getOwner().getBehaviorSettings() .getHyperAggressionValue(); double aggressionMod = distToEnemy * aggression; formula.append(" - aggressionMod [") .append(LOG_DECIMAL.format(aggressionMod)).append(" = ") .append(LOG_DECIMAL.format(distToEnemy)).append(" * ") .append(LOG_DECIMAL.format(aggression)).append("]"); return aggressionMod; }
.distanceToClosestEnemy(Mockito.any(Entity.class), Mockito.nullable(Coords.class), Mockito.nullable(IGame.class))) .thenReturn(10.0);
Mockito.doReturn(12.0) .when(testRanker) .distanceToClosestEnemy(Mockito.any(Entity.class), Mockito.any(Coords.class), Mockito.any(IGame.class)); Mockito.doReturn(0.0) .when(testRanker) .distanceToClosestEnemy(Mockito.any(Entity.class), Mockito.any(Coords.class), Mockito.any(IGame.class)); expected = new RankedPath(-26.25, mockPath, "Calculation: {" + "fall mod [" + LOG_DECIMAL.format(0) + " = " + LOG_DECIMAL.format .distanceToClosestEnemy(Mockito.any(Entity.class), Mockito.any(Coords.class), Mockito.any(IGame.class)); expected = new RankedPath(-76.25, mockPath, "Calculation: " + "{fall mod [" + LOG_DECIMAL.format(0) + " = " + LOG_DECIMAL .distanceToClosestEnemy(Mockito.any(Entity.class), Mockito.any(Coords.class), Mockito.any(IGame.class));