### Question:
DeleteGameObjectInstanceAction implements Action { @Override public void invoke(GameScene aScene, ConditionResult aResult) { for (GameObjectInstance theInstance : aResult.getAffectedInstances()) { aScene.removeGameObjectInstance(theInstance); } } @UsedByReflection  DeleteGameObjectInstanceAction(); @Override void invoke(GameScene aScene, ConditionResult aResult); @Override Map<String, Object> serialize(); static DeleteGameObjectInstanceAction unmarshall(); static final String TYPE_VALUE; }### Answer:
@Test public void testInvoke() throws Exception { GameScene theScene = mock(GameScene.class); GameObjectInstance theInstance1 = mock(GameObjectInstance.class); GameObjectInstance theInstance2 = mock(GameObjectInstance.class); ConditionResult theResult = new ConditionResult(true, null, new GameObjectInstance[] {theInstance1, theInstance2}); DeleteGameObjectInstanceAction theAction = new DeleteGameObjectInstanceAction(); theAction.invoke(theScene, theResult); verify(theScene).removeGameObjectInstance(theInstance1); verify(theScene).removeGameObjectInstance(theInstance2); }