@Test
public void testRetrievingAnnotatedImageWhenTriggerTypeIsGreaterThan() {

    Double triggerThreshold = 1D;
    Long triggerFiredTime = 1563692460000L;
    Long inertia = 1800*1000L;
    ImageDataRetrievalContext context = getImageDataRetrievalContext(Trigger.TriggerType.GREATER_THAN, triggerFiredTime, inertia, triggerThreshold, NotificationStatus.TRIGGERED);
    ArgumentMatcher<ImageProperties> imageProperties = new ArgumentMatcher<ImageProperties>() {
        @Override
        public boolean matches(ImageProperties imageProperties) {
            return imageProperties.getShadeXAxisArea().size() == 1 && imageProperties.getShadeYAxisArea().size() == 1;
        }
    };
    ArgumentMatcher<List<Metric>> metricList = new ArgumentMatcher<List<Metric>>() {
        @Override
        public boolean matches(List<Metric> metricList) {
            return metricList.size() == 1;
        }
    };
    when(imageServiceMock.generateAndStoreImage(argThat(metricList), argThat(imageProperties),
            eq(true))).thenReturn(Pair.of("1", "TestString".getBytes()));
    Pair<String, byte[]> imageDetails = imageDataRetriever.getAnnotatedImage(context);
    verify(imageServiceMock, times(1)).generateAndStoreImage(argThat(metricList),
            argThat(imageProperties), eq(true));
}