/** * cycle through players team and select the best initiative * take negatives only if the current bonus is zero */ public int getTotalInitBonus(boolean bInitiativeCompensationBonus) { int turnb = 0; int constantb = Integer.MIN_VALUE; int commandb = Integer.MIN_VALUE; constantb = Integer.MIN_VALUE; for (IPlayer player : getPlayersVector()) { turnb += player.getTurnInitBonus(); if (player.getCommandBonus() > commandb) { commandb = player.getCommandBonus(); } if (player.getConstantInitBonus() > constantb) { constantb = player.getConstantInitBonus(); } } return constantb + turnb + commandb + getInitCompensationBonus(bInitiativeCompensationBonus); }
Mockito.when(mockPlayer1.getTurnInitBonus()).thenReturn(0); Mockito.when(mockPlayer1.getInitCompensationBonus()).thenReturn(0); Mockito.when(mockPlayer1.getCommandBonus()).thenReturn(0); Mockito.when(mockPlayer2.getTurnInitBonus()).thenReturn(0); Mockito.when(mockPlayer2.getInitCompensationBonus()).thenReturn(0); Mockito.when(mockPlayer2.getCommandBonus()).thenReturn(0); Mockito.when(mockPlayer2.getTurnInitBonus()).thenReturn(0); Mockito.when(mockPlayer2.getInitCompensationBonus()).thenReturn(0); Mockito.when(mockPlayer2.getCommandBonus()).thenReturn(0); Assert.assertEquals(6, initBonus); Mockito.when(mockPlayer1.getTurnInitBonus()).thenReturn(1); Mockito.when(mockPlayer2.getTurnInitBonus()).thenReturn(2); Mockito.when(mockPlayer3.getTurnInitBonus()).thenReturn(3); initBonus = testTeam.getTotalInitBonus(useInitCompBonus); Assert.assertEquals(12, initBonus); Mockito.when(mockPlayer1.getTurnInitBonus()).thenReturn(-1); Mockito.when(mockPlayer2.getTurnInitBonus()).thenReturn(-2); Mockito.when(mockPlayer3.getTurnInitBonus()).thenReturn(-3); initBonus = testTeam.getTotalInitBonus(useInitCompBonus); Assert.assertEquals(0, initBonus);