@Test public void shouldLoadHistogramFromDefaultStorage(){ //given Date from = parse("2016-10-01 00:00:00"); Date to = parse("2016-10-01 23:58:00"); //when storage.loadHistogram("detailsId", from, to, "instance", "type", null); //then verify(defaultStorage).loadHistogram(eq("detailsId"), eq(from), eq(to), eq("instance"), eq("type"), isNull(String.class)); verifyNoMoreInteractions(dailyStorage); verifyNoMoreInteractions(weeklyStorage); verifyNoMoreInteractions(monthlyStorage); }
@Test public void shouldLoadWeeklyHistogramFromDailyStorage(){ //given Date from = parse("2016-10-01 00:00:00"); Date to = parse("2016-10-08 01:58:00"); //when storage.loadHistogram("detailsId", from, to, "instance", "type", null); //then verifyNoMoreInteractions(defaultStorage); verify(dailyStorage).loadHistogram(eq("detailsId"), eq(from), eq(to), isNull(String.class), eq("type"), isNull(String.class)); verifyNoMoreInteractions(weeklyStorage); verifyNoMoreInteractions(monthlyStorage); }
@Test public void shouldLoadMonthlyHistogramFromDailyStorage(){ //given Date from = parse("2016-10-01 00:00:00"); Date to = parse("2016-11-08 01:58:00"); //when storage.loadHistogram("detailsId", from, to, "instance", "type", null); //then verifyNoMoreInteractions(defaultStorage); verify(dailyStorage).loadHistogram(eq("detailsId"), eq(from), eq(to), isNull(String.class), eq("type"), isNull(String.class)); verifyNoMoreInteractions(weeklyStorage); verifyNoMoreInteractions(monthlyStorage); } }
@Test public void shouldLoadDailyHistogramFromDailyStorage(){ //given Date from = parse("2016-10-01 00:00:00"); Date to = parse("2016-10-02 01:58:00"); //when storage.loadHistogram("detailsId", from, to, "instance", "type", null); //then verifyNoMoreInteractions(defaultStorage); verify(dailyStorage).loadHistogram(eq("detailsId"), eq(from), eq(to), isNull(String.class), eq("type"), isNull(String.class)); verifyNoMoreInteractions(weeklyStorage); verifyNoMoreInteractions(monthlyStorage); }
@Test public void should_load_histogram_by_instance_and_type() throws IOException{ //given Stats stats = stats(dt(year+"-01-01 08:05:00"), dt(year+"-01-01 08:15:00"), stat(100)); //save the same but with different instance and type storage.save(stats, "i1", null); storage.save(stats, "i1", "t1"); storage.save(stats, "i2", "t1"); //when Histogram histogramI = storage.loadHistogram(STAT_NAME, dt(year+"-01-01 08:00:00"), dt(year+"-01-01 08:30:00"), "i1", null, null); Histogram histogramT = storage.loadHistogram(STAT_NAME, dt(year+"-01-01 08:00:00"), dt(year+"-01-01 08:30:00"), null, "t1", null); Histogram histogramIT = storage.loadHistogram(STAT_NAME, dt(year+"-01-01 08:00:00"), dt(year+"-01-01 08:30:00"), "i1", "t1", null); //then assertEquals( 2, histogramI.getHistogram().size()); assertEquals( 2, histogramT.getHistogram().size()); assertEquals( 1, histogramIT.getHistogram().size()); }
Histogram histogram = storage.loadHistogram(STAT_NAME, dt(year+"-01-01 08:20:00"), dt(year+"-01-01 08:25:00"), null, null, null);
private Histogram histogramForRange(String id, TimeRange range, String lastGroupId) { Histogram result; if( canSearch(range) ){ result = getStorage().loadHistogram(id, range.getFromDate(), range.getToDate(), range.getInstance(), range.getType(), lastGroupId); if( inMemoryInRange(range) && result.isLastHistogramPart() ){ Histogram current = histogramInMemory(id); if( current != null ){ result.getHistogram().addAll(current.getHistogram()); } result.setInfo("Added in-memory data. Original info: " + result.getInfo()); } } else { result = histogramInMemory(id); result.setInfo("in-memory data only. Original info: " + result.getInfo()); } result.setInfo(result.getInfo() + ", " + range.toString() ); return (result != null) ? result : new Histogram(id); }