public void testPlayerVP() throws RulesBrokenException { PlayerColor blue = new PlayerColor("Blue", Color.blue, 'b'); Player p = new Player(blue, changeNo, mockConstraints); Achievement largestArmy = new Achievement("Largest Army", 2, "LH", 'l', "LargestArmy", 1); mockListener.playerVPChanged(new PlayerEvent(p)); expectLastCall().times(3); replay(mockListener); p.addPlayerListener(mockListener); p.setVP(10); p.add(largestArmy); p.remove(largestArmy); // check the remove works p.removePlayerListener(mockListener); // none of these should pass events to mockListener: p.setVP(12); p.add(largestArmy); p.remove(largestArmy); verify(mockListener); }