@Test public void shouldCreateNewAggregateForDailyStats(){ //given Stats stats = new Stats(); stats.setStartDate(parse("2000-03-03 13:15:12")); stats.setEndDate(parse("2000-03-03 13:25:07")); stats.getMap().put("x", Stat.emptyStat()); given(dailyStorage.find( eq(parse("2000-03-03 00:00:01")), eq(parse("2000-03-03 23:59:58")), isNull(String.class), eq("type") )).willReturn( emptyList() ); //when storage.save(stats, "instance", "type"); //then verify(dailyStorage).find(eq(parse("2000-03-03 00:00:01")), eq(parse("2000-03-03 23:59:58")), isNull(String.class), eq("type")); verify(dailyStorage).replace(isNull(String.class), statsCaptor.capture(), isNull(String.class), eq("type")); assertEquals(parse("2000-03-03 00:00:00"), statsCaptor.getValue().getStartDate()); assertEquals(parse("2000-03-03 23:59:59"), statsCaptor.getValue().getEndDate()); }
@Test public void shouldCreateNewAggregateForWeeklyStats(){ //given Stats stats = new Stats(); stats.setStartDate(parse("2016-10-12 13:15:12")); stats.setEndDate(parse("2016-10-12 13:25:07")); stats.getMap().put("x", Stat.emptyStat()); given(weeklyStorage.find( eq(parse("2016-10-09 23:59:59")), eq(parse("2016-10-17 00:00:00")), isNull(String.class), eq("type") )).willReturn( emptyList() ); //when storage.save(stats, "instance", "type"); //then verify(weeklyStorage).find(eq(parse("2016-10-10 00:00:01")), eq(parse("2016-10-16 23:59:58")), isNull(String.class), eq("type")); verify(weeklyStorage).replace(isNull(String.class), statsCaptor.capture(), isNull(String.class), eq("type")); assertEquals(parse("2016-10-10 00:00:00"), statsCaptor.getValue().getStartDate()); assertEquals(parse("2016-10-16 23:59:59"), statsCaptor.getValue().getEndDate()); }
@Test public void shouldCreateNewAggregateForMonthlyStats(){ //given Stats stats = new Stats(); stats.setStartDate(parse("2016-10-12 13:15:12")); stats.setEndDate(parse("2016-10-12 13:25:07")); stats.getMap().put("x", Stat.emptyStat()); given(monthlyStorage.find( eq(parse("2016-10-01 00:00:01")), eq(parse("2016-10-31 23:59:58")), isNull(String.class), eq("type") )).willReturn( emptyList() ); //when storage.save(stats, "instance", "type"); //then verify(monthlyStorage).find(eq(parse("2016-10-01 00:00:01")), eq(parse("2016-10-31 23:59:58")), isNull(String.class), eq("type")); verify(monthlyStorage).replace(isNull(String.class), statsCaptor.capture(), isNull(String.class), eq("type")); assertEquals(parse("2016-10-01 00:00:00"), statsCaptor.getValue().getStartDate()); assertEquals(parse("2016-10-31 23:59:59"), statsCaptor.getValue().getEndDate()); }
verify(monthlyStorage).replace(eq("daily-stat-id"), statsCaptor.capture(), isNull(String.class), eq("type"));
verify(dailyStorage).replace(eq("daily-stat-id"), statsCaptor.capture(), isNull(String.class), eq("type"));
verify(weeklyStorage).replace(eq("daily-stat-id"), statsCaptor.capture(), isNull(String.class), eq("type"));