### Question:
AgentManager { public void setup() throws Exception { System.setProperty("adk.log.file", logPath + File.separator + adkLogFile); ADK.initialize(); ADK.debug = ADK.DBG_ALL; agent.startAgent(); subscribeToZone(); }  @PostConstruct void postConstruct(); void setup(); @PreDestroy void cleanup(); void setSubscribeTypeList(List<String> subscribeTypeList); List<String> getSubscribeTypeList(); void setSubscriberZoneName(String subscriberZoneName); String getSubscriberZoneName(); void setAgent(SifAgent agent); SifAgent getAgent(); String getLogPath(); void setLogPath(String logPath); String getAdkLogFile(); void setAdkLogFile(String adkLogFile); List<ElementDef> getSubscribeList(); void setSubscribeList(List<ElementDef> subscribeList);  }### Answer:
@Test public void shouldStartAgentOnSetup() throws Exception { agentManager.setup(); Mockito.verify(mockAgent, Mockito.times(1)).startAgent(); }
@Test public void shouldSubscribeToZoneOnSetup() throws Exception { agentManager.setup(); Mockito.verify(mockAgent, Mockito.times(1)).startAgent(); Mockito.verify(mockZone, Mockito.times(1)).setSubscriber(Mockito.any(SifSubscriber.class), Mockito.any(ElementDef.class), Mockito.any(SubscriptionOptions.class)); SifAgent agent = new SifAgent(); Assert.assertTrue("SifAgent should extend", agent instanceof Agent); }