public void test_mapValues_multiplySeries() { LocalDateDoubleTimeSeries base = LocalDateDoubleTimeSeries.builder().putAll(DATES_2015_1_WEEK, VALUES_1_WEEK).build(); LocalDateDoubleTimeSeries test = base.mapValues(d -> d * 5); List<Double> expectedValues = values(50, 55, 60, 65, 70); assertEquals(test, LocalDateDoubleTimeSeries.builder().putAll(DATES_2015_1_WEEK, expectedValues).build()); }
public void test_mapValues_addConstantToSeries() { LocalDateDoubleTimeSeries base = LocalDateDoubleTimeSeries.builder().putAll(DATES_2010_14, VALUES_10_14).build(); LocalDateDoubleTimeSeries test = base.mapValues(d -> d + 5); List<Double> expectedValues = values(15, 16, 17, 18, 19); assertEquals(test, LocalDateDoubleTimeSeries.builder().putAll(DATES_2010_14, expectedValues).build()); }
public void test_mapValues_multiplySeries() { LocalDateDoubleTimeSeries base = LocalDateDoubleTimeSeries.builder().putAll(DATES_2010_14, VALUES_10_14).build(); LocalDateDoubleTimeSeries test = base.mapValues(d -> d * 5); List<Double> expectedValues = values(50, 55, 60, 65, 70); assertEquals(test, LocalDateDoubleTimeSeries.builder().putAll(DATES_2010_14, expectedValues).build()); }
public void test_mapValues_addConstantToSeries() { LocalDateDoubleTimeSeries base = LocalDateDoubleTimeSeries.builder().putAll(DATES_2015_1_WEEK, VALUES_1_WEEK).build(); LocalDateDoubleTimeSeries test = base.mapValues(d -> d + 5); List<Double> expectedValues = values(15, 16, 17, 18, 19); assertEquals(test, LocalDateDoubleTimeSeries.builder().putAll(DATES_2015_1_WEEK, expectedValues).build()); }
public void test_mapValues_invertSeries() { List<Double> values = values(1, 2, 4, 5, 8); LocalDateDoubleTimeSeries base = LocalDateDoubleTimeSeries.builder().putAll(DATES_2010_14, values).build(); LocalDateDoubleTimeSeries test = base.mapValues(d -> 1 / d); List<Double> expectedValues = values(1, 0.5, 0.25, 0.2, 0.125); assertEquals(test, LocalDateDoubleTimeSeries.builder().putAll(DATES_2010_14, expectedValues).build()); }
public void test_mapValues_invertSeries() { List<Double> values = values(1, 2, 4, 5, 8); LocalDateDoubleTimeSeries base = LocalDateDoubleTimeSeries.builder().putAll(DATES_2015_1_WEEK, values).build(); LocalDateDoubleTimeSeries test = base.mapValues(d -> 1 / d); List<Double> expectedValues = values(1, 0.5, 0.25, 0.2, 0.125); assertEquals(test, LocalDateDoubleTimeSeries.builder().putAll(DATES_2015_1_WEEK, expectedValues).build()); }
public void test_NaN_is_not_allowed() { assertThrowsIllegalArg(() -> LocalDateDoubleTimeSeries.of(DATE_2015_01_02, Double.NaN)); assertThrowsIllegalArg(() -> LocalDateDoubleTimeSeries.builder().put(DATE_2015_01_02, Double.NaN)); assertThrowsIllegalArg(() -> LocalDateDoubleTimeSeries.builder().putAll( ImmutableMap.of(DATE_2015_01_02, Double.NaN))); assertThrowsIllegalArg(() -> LocalDateDoubleTimeSeries.builder().put( LocalDateDoublePoint.of(DATE_2015_01_02, Double.NaN))); assertThrowsIllegalArg(() -> LocalDateDoubleTimeSeries.builder().putAll( ImmutableList.of(DATE_2015_01_02), ImmutableList.of(Double.NaN))); assertThrowsIllegalArg(() -> LocalDateDoubleTimeSeries.builder().putAll( ImmutableList.of(LocalDateDoublePoint.of(DATE_2015_01_02, Double.NaN)))); LocalDateDoubleTimeSeries s1 = LocalDateDoubleTimeSeries.of(DATE_2015_01_02, 1d); LocalDateDoubleTimeSeries s2 = LocalDateDoubleTimeSeries.of(DATE_2015_01_02, 2d); assertThrowsIllegalArg(() -> s1.intersection(s2, (d1, d2) -> Double.NaN)); assertThrowsIllegalArg(() -> s1.mapValues(d -> Double.NaN)); }