@Test(expected = IllegalStateException.class)
public void testDataExists() {
List<Object> expectedHosts = Arrays.asList("host1");
AbsenceWindow window = new AbsenceWindow();
window.startTime = 100L;
window.endTime = 200L;
AbsenceWindowProcessor processor = new AbsenceWindowProcessor(expectedHosts, window);
processor.process(Arrays.asList("host2"), 90);
Assert.assertEquals(processor.checkStatus(), AbsenceWindowProcessor.OccurStatus.not_sure);
processor.process(Arrays.asList("host3"), 101);
Assert.assertEquals(processor.checkStatus(), AbsenceWindowProcessor.OccurStatus.not_sure);
processor.process(Arrays.asList("host1"), 138);
Assert.assertEquals(processor.checkStatus(), AbsenceWindowProcessor.OccurStatus.occured);
processor.process(Arrays.asList("host2"), 189);
Assert.assertEquals(processor.checkStatus(), AbsenceWindowProcessor.OccurStatus.occured);
processor.process(Arrays.asList("host2"), 201);
Assert.assertEquals(processor.checkStatus(), AbsenceWindowProcessor.OccurStatus.occured);
Assert.assertEquals(processor.checkExpired(), true);
processor.process(Arrays.asList("host2"), 225);
}
}