/** * 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); Mockito.when(mockPlayer2.getCommandBonus()).thenReturn(2); initBonus = testTeam.getTotalInitBonus(useInitCompBonus); Assert.assertEquals(1, initBonus); Mockito.when(mockPlayer1.getCommandBonus()).thenReturn(1); initBonus = testTeam.getTotalInitBonus(useInitCompBonus); Assert.assertEquals(1, initBonus); Mockito.when(mockPlayer3.getCommandBonus()).thenReturn(4); initBonus = testTeam.getTotalInitBonus(useInitCompBonus); Assert.assertEquals(3, initBonus); Mockito.when(mockPlayer2.getConstantInitBonus()).thenReturn(2); Mockito.when(mockPlayer3.getConstantInitBonus()).thenReturn(3); Mockito.when(mockPlayer1.getCommandBonus()).thenReturn(0); Mockito.when(mockPlayer2.getCommandBonus()).thenReturn(0); Mockito.when(mockPlayer3.getCommandBonus()).thenReturn(0);