private static void assertEquivalent(double actual, double expected) { if (expected == POSITIVE_INFINITY) { assertThat(actual).isPositiveInfinity(); } else if (expected == NEGATIVE_INFINITY) { assertThat(actual).isNegativeInfinity(); } else if (Double.isNaN(expected)) { assertThat(actual).isNaN(); } else { assertThat(actual).isWithin(ALLOWED_ERROR).of(expected); } } }
public void testScale_index_compute_doubleCollection_positiveInfinity() { // interpolating between 5.0 and POSITIVE_INFNINITY assertThat(Quantiles.scale(10).index(9).compute(ONE_TO_FIVE_AND_POSITIVE_INFINITY)) .isPositiveInfinity(); }
@Test public void positiveInfinity() { Struct row = execute(Statement.newBuilder("SELECT IEEE_DIVIDE(1, 0)"), Type.float64()); assertThat(row.getDouble(0)).isPositiveInfinity(); }
@Test public void nonNumberArray() { Struct row = execute( Statement.newBuilder( "SELECT [IEEE_DIVIDE(1, 0), IEEE_DIVIDE(-1, 0), IEEE_DIVIDE(0, 0)]"), Type.array(Type.float64())); assertThat(row.getDoubleList(0)).hasSize(3); assertThat(row.getDoubleList(0).get(0)).isPositiveInfinity(); assertThat(row.getDoubleList(0).get(1)).isNegativeInfinity(); assertThat(row.getDoubleList(0).get(2)).isNaN(); }
assertThat(Stats.meanOf(POSITIVE_INFINITY)).isPositiveInfinity(); assertThat(Stats.meanOf(NEGATIVE_INFINITY)).isNegativeInfinity(); assertThat(Stats.meanOf(NaN)).isNaN(); assertThat(mean).named("mean of " + values).isNaN(); } else if (values.hasAnyPositiveInfinity()) { assertThat(mean).named("mean of " + values).isPositiveInfinity(); } else if (values.hasAnyNegativeInfinity()) { assertThat(mean).named("mean of " + values).isNegativeInfinity();
assertThat(Stats.of(POSITIVE_INFINITY).max()).isPositiveInfinity(); assertThat(Stats.of(NEGATIVE_INFINITY).max()).isNegativeInfinity(); assertThat(Stats.of(NaN).max()).isNaN(); assertThat(max).named("max of " + values).isNaN(); } else if (values.hasAnyPositiveInfinity()) { assertThat(max).named("max of " + values).isPositiveInfinity(); } else { assertThat(max).named("max of " + values).isWithin(ALLOWED_ERROR).of(MANY_VALUES_MAX);
assertThat(Stats.of(POSITIVE_INFINITY).mean()).isPositiveInfinity(); assertThat(Stats.of(NEGATIVE_INFINITY).mean()).isNegativeInfinity(); assertThat(Stats.of(NaN).mean()).isNaN(); assertThat(mean).named("mean of " + values).isNaN(); } else if (values.hasAnyPositiveInfinity()) { assertThat(mean).named("mean of " + values).isPositiveInfinity(); } else if (values.hasAnyNegativeInfinity()) { assertThat(mean).named("mean of " + values).isNegativeInfinity();
assertThat(Stats.of(POSITIVE_INFINITY).min()).isPositiveInfinity(); assertThat(Stats.of(NEGATIVE_INFINITY).min()).isNegativeInfinity(); assertThat(Stats.of(NaN).min()).isNaN();
assertThat(maxByAddAllStats).named("max by addAll(Stats) of " + values).isNaN(); } else if (values.hasAnyPositiveInfinity()) { assertThat(max).named("max of " + values).isPositiveInfinity(); assertThat(maxByAddAllStats) .named("max by addAll(Stats) of " + values) .isPositiveInfinity(); } else { assertThat(max).named("max of " + values).isWithin(ALLOWED_ERROR).of(MANY_VALUES_MAX);
assertThat(meanByAddAllStats).named("mean by addAll(Stats) of " + values).isNaN(); } else if (values.hasAnyPositiveInfinity()) { assertThat(mean).named("mean of " + values).isPositiveInfinity(); assertThat(meanByAddAllStats) .named("mean by addAll(Stats) of " + values) .isPositiveInfinity(); } else if (values.hasAnyNegativeInfinity()) { assertThat(mean).named("mean of " + values).isNegativeInfinity();
@Test public void writeFloat64NonNumbers() { write(baseInsert().set("Float64Value").to(Double.NEGATIVE_INFINITY).build()); Struct row = readLastRow("Float64Value"); assertThat(row.isNull(0)).isFalse(); assertThat(row.getDouble(0)).isNegativeInfinity(); write(baseInsert().set("Float64Value").to(Double.POSITIVE_INFINITY).build()); row = readLastRow("Float64Value"); assertThat(row.isNull(0)).isFalse(); assertThat(row.getDouble(0)).isPositiveInfinity(); write(baseInsert().set("Float64Value").to(Double.NaN).build()); row = readLastRow("Float64Value"); assertThat(row.isNull(0)).isFalse(); assertThat(row.getDouble(0)).isNaN(); }
private static void assertEquivalent(double actual, double expected) { if (expected == POSITIVE_INFINITY) { assertThat(actual).isPositiveInfinity(); } else if (expected == NEGATIVE_INFINITY) { assertThat(actual).isNegativeInfinity(); } else if (Double.isNaN(expected)) { assertThat(actual).isNaN(); } else { assertThat(actual).isWithin(ALLOWED_ERROR).of(expected); } } }
public void testScale_index_compute_doubleCollection_positiveInfinity() { // interpolating between 5.0 and POSITIVE_INFNINITY assertThat(Quantiles.scale(10).index(9).compute(ONE_TO_FIVE_AND_POSITIVE_INFINITY)) .isPositiveInfinity(); }
assertThat(Stats.meanOf(POSITIVE_INFINITY)).isPositiveInfinity(); assertThat(Stats.meanOf(NEGATIVE_INFINITY)).isNegativeInfinity(); assertThat(Stats.meanOf(NaN)).isNaN(); assertThat(mean).named("mean of " + values).isNaN(); } else if (values.hasAnyPositiveInfinity()) { assertThat(mean).named("mean of " + values).isPositiveInfinity(); } else if (values.hasAnyNegativeInfinity()) { assertThat(mean).named("mean of " + values).isNegativeInfinity();
assertThat(Stats.of(POSITIVE_INFINITY).max()).isPositiveInfinity(); assertThat(Stats.of(NEGATIVE_INFINITY).max()).isNegativeInfinity(); assertThat(Stats.of(NaN).max()).isNaN(); assertThat(max).named("max of " + values).isNaN(); } else if (values.hasAnyPositiveInfinity()) { assertThat(max).named("max of " + values).isPositiveInfinity(); } else { assertThat(max).named("max of " + values).isWithin(ALLOWED_ERROR).of(MANY_VALUES_MAX);
assertThat(Stats.of(POSITIVE_INFINITY).mean()).isPositiveInfinity(); assertThat(Stats.of(NEGATIVE_INFINITY).mean()).isNegativeInfinity(); assertThat(Stats.of(NaN).mean()).isNaN(); assertThat(mean).named("mean of " + values).isNaN(); } else if (values.hasAnyPositiveInfinity()) { assertThat(mean).named("mean of " + values).isPositiveInfinity(); } else if (values.hasAnyNegativeInfinity()) { assertThat(mean).named("mean of " + values).isNegativeInfinity();
assertThat(Stats.of(POSITIVE_INFINITY).min()).isPositiveInfinity(); assertThat(Stats.of(NEGATIVE_INFINITY).min()).isNegativeInfinity(); assertThat(Stats.of(NaN).min()).isNaN();
assertThat(maxByAddAllStats).named("max by addAll(Stats) of " + values).isNaN(); } else if (values.hasAnyPositiveInfinity()) { assertThat(max).named("max of " + values).isPositiveInfinity(); assertThat(maxByAddAllStats) .named("max by addAll(Stats) of " + values) .isPositiveInfinity(); } else { assertThat(max).named("max of " + values).isWithin(ALLOWED_ERROR).of(MANY_VALUES_MAX);
assertThat(meanByAddAllStats).named("mean by addAll(Stats) of " + values).isNaN(); } else if (values.hasAnyPositiveInfinity()) { assertThat(mean).named("mean of " + values).isPositiveInfinity(); assertThat(meanByAddAllStats) .named("mean by addAll(Stats) of " + values) .isPositiveInfinity(); } else if (values.hasAnyNegativeInfinity()) { assertThat(mean).named("mean of " + values).isNegativeInfinity();