public void test_earliestLatest_whenEmpty() { LocalDateDoubleTimeSeries test = LocalDateDoubleTimeSeries.empty(); TestHelper.assertThrows(() -> test.getEarliestDate(), NoSuchElementException.class); TestHelper.assertThrows(() -> test.getEarliestValue(), NoSuchElementException.class); TestHelper.assertThrows(() -> test.getLatestDate(), NoSuchElementException.class); TestHelper.assertThrows(() -> test.getLatestValue(), NoSuchElementException.class); }
/** * Build the time-series from the builder. * * @return a time-series containing the entries from the builder */ public LocalDateDoubleTimeSeries build() { if (entries.isEmpty()) { return LocalDateDoubleTimeSeries.empty(); } // Depending on how dense the data is, judge which type of time series // is the best fit return density() > DENSITY_THRESHOLD ? createDenseSeries() : createSparseSeries(); }
// ------------------------------------------------------------------------- public void test_combineWith_intersectionWithNoMatchingElements() { LocalDateDoubleTimeSeries series1 = LocalDateDoubleTimeSeries.builder().putAll(DATES_2010_14, VALUES_10_14).build(); List<LocalDate> dates2 = dates(DATE_2010_06_01, DATE_2011_06_01, DATE_2012_06_01, DATE_2013_06_01, DATE_2014_06_01); LocalDateDoubleTimeSeries series2 = LocalDateDoubleTimeSeries.builder().putAll(dates2, VALUES_10_14).build(); LocalDateDoubleTimeSeries test = series1.intersection(series2, Double::sum); assertEquals(test, LocalDateDoubleTimeSeries.empty()); }
// ------------------------------------------------------------------------- public void test_emptySeries() { LocalDateDoubleTimeSeries test = LocalDateDoubleTimeSeries.empty(); assertEquals(test.isEmpty(), true); assertEquals(test.size(), 0); assertEquals(test.containsDate(DATE_2010_01_01), false); assertEquals(test.containsDate(DATE_2011_01_01), false); assertEquals(test.containsDate(DATE_2012_01_01), false); assertEquals(test.get(DATE_2010_01_01), OptionalDouble.empty()); assertEquals(test.get(DATE_2011_01_01), OptionalDouble.empty()); assertEquals(test.get(DATE_2012_01_01), OptionalDouble.empty()); assertEquals(test, LocalDateDoubleTimeSeries.builder().putAll(dates(), values()).build()); assertEquals(test.dates().count(), 0); assertEquals(test.values().count(), 0); }
@Test(dataProvider = "tailSeries") public void test_tailSeries_emptySeries(int count, int[] expected) { LocalDateDoubleTimeSeries test = LocalDateDoubleTimeSeries.empty().tailSeries(count); assertEquals(test.size(), 0); }
@Test(dataProvider = "subSeries") public void test_subSeries_emptySeries(LocalDate start, LocalDate end, int[] expected) { LocalDateDoubleTimeSeries test = LocalDateDoubleTimeSeries.empty().subSeries(start, end); assertEquals(test.size(), 0); }