You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by kh...@apache.org on 2019/06/04 20:02:28 UTC

[commons-statistics] 01/02: Improved.

This is an automated email from the ASF dual-hosted git repository.

khmarbaise pushed a commit to branch STATISTICS-14
in repository https://gitbox.apache.org/repos/asf/commons-statistics.git

commit 7935eb195537bd7567109401c6ba5fb0db6e6fd0
Author: Karl Heinz Marbaise <kh...@apache.org>
AuthorDate: Tue Jun 4 21:47:53 2019 +0200

    Improved.
---
 .../BigDecimalSummaryStatisticsAssert.java         | 45 +++++++++++++++-------
 .../BigDecimalSummaryStatisticsTest.java           | 11 +++++-
 2 files changed, 41 insertions(+), 15 deletions(-)

diff --git a/commons-statistics-bigdecimal/src/test/java/org/apache/commons/statistics/bigdecimal/descriptive/BigDecimalSummaryStatisticsAssert.java b/commons-statistics-bigdecimal/src/test/java/org/apache/commons/statistics/bigdecimal/descriptive/BigDecimalSummaryStatisticsAssert.java
index a71bee4..7d14dbb 100644
--- a/commons-statistics-bigdecimal/src/test/java/org/apache/commons/statistics/bigdecimal/descriptive/BigDecimalSummaryStatisticsAssert.java
+++ b/commons-statistics-bigdecimal/src/test/java/org/apache/commons/statistics/bigdecimal/descriptive/BigDecimalSummaryStatisticsAssert.java
@@ -16,12 +16,16 @@
  */
 package org.apache.commons.statistics.bigdecimal.descriptive;
 
+import java.math.BigDecimal;
 import org.assertj.core.api.AbstractAssert;
+import org.assertj.core.api.Assertions;
+import org.assertj.core.data.Offset;
 
 public class BigDecimalSummaryStatisticsAssert extends
     AbstractAssert<BigDecimalSummaryStatisticsAssert, BigDecimalSummaryStatistics> {
 
-    public BigDecimalSummaryStatisticsAssert(BigDecimalSummaryStatistics bigDecimalSummaryStatistics) {
+    public BigDecimalSummaryStatisticsAssert(
+        BigDecimalSummaryStatistics bigDecimalSummaryStatistics) {
         super(bigDecimalSummaryStatistics, BigDecimalSummaryStatisticsAssert.class);
     }
 
@@ -29,26 +33,39 @@ public class BigDecimalSummaryStatisticsAssert extends
         return new BigDecimalSummaryStatisticsAssert(actual);
     }
 
+    public BigDecimalSummaryStatisticsAssert hasAverage(BigDecimal expected) {
+        isNotNull();
+        Assertions.assertThat(myself.actual.getAverage()).isEqualTo(expected);
+        return myself;
+    }
+
+    public BigDecimalSummaryStatisticsAssert hasSum(double expected, Offset<Double> offset) {
+        isNotNull();
+        Assertions.assertThat(myself.actual.getSum().doubleValue()).isEqualTo(expected, offset);
+        return myself;
+    }
+
+    public BigDecimalSummaryStatisticsAssert hasMin(double expected, Offset<Double> offset) {
+        isNotNull();
+        Assertions.assertThat(myself.actual.getMin().doubleValue()).isEqualTo(expected, offset);
+        return myself;
+    }
+
+    public BigDecimalSummaryStatisticsAssert hasMax(BigDecimal expected) {
+        isNotNull();
+        Assertions.assertThat(myself.actual.getMax()).isEqualTo(expected);
+        return myself;
+    }
+
     public BigDecimalSummaryStatisticsAssert getAverage() {
         isNotNull();
         return myself;
     }
+
     public BigDecimalSummaryStatisticsAssert isEqualTo(BigDecimalSummaryStatistics expected) {
+        System.out.println("this:" + this.getClass().getName());
 
         return null;
     }
 
-//    public BigDecimalSummaryStatisticsAssert isCloseTo(Complex expected, float offset) {
-//        Assertions.assertThat(actual.getImaginary())
-//            .isCloseTo(expected.getImaginary(), Offset.offset(
-//                (double) offset));
-//        Assertions.assertThat(actual.getReal()).isCloseTo(expected.getReal(), Offset.offset(
-//            (double) offset));
-//        return myself;
-//    }
-//
-//    public BigDecimalSummaryStatisticsAssert withDelta(float delta) {
-//        myself.actual.getImaginary();
-//        return myself;
-//    }
 }
diff --git a/commons-statistics-bigdecimal/src/test/java/org/apache/commons/statistics/bigdecimal/descriptive/BigDecimalSummaryStatisticsTest.java b/commons-statistics-bigdecimal/src/test/java/org/apache/commons/statistics/bigdecimal/descriptive/BigDecimalSummaryStatisticsTest.java
index 6140a96..f6c1faf 100644
--- a/commons-statistics-bigdecimal/src/test/java/org/apache/commons/statistics/bigdecimal/descriptive/BigDecimalSummaryStatisticsTest.java
+++ b/commons-statistics-bigdecimal/src/test/java/org/apache/commons/statistics/bigdecimal/descriptive/BigDecimalSummaryStatisticsTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.commons.statistics.bigdecimal.descriptive;
 
+import static org.apache.commons.statistics.bigdecimal.descriptive.BigDecimalSummaryStatisticsAssert.assertThat;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatIllegalArgumentException;
 import static org.assertj.core.api.Assertions.assertThatIllegalStateException;
@@ -204,11 +205,18 @@ class BigDecimalSummaryStatisticsTest {
 
             assertThat(collect.getCount()).isEqualTo(42L);
             assertThat(collect.getAverage().doubleValue()).isEqualTo(21.5d, EPSILON);
-//        BigDecimalSummaryStatisticsAssert.assertThat(collect).getAverage().isEqualTo(5.5d, EPSILON);
             assertThat(collect.getSum().doubleValue()).isEqualTo(903d, EPSILON);
             assertThat(collect.getMin()).isEqualTo(BigDecimal.ONE);
             assertThat(collect.getMax()).isEqualTo(BigDecimal.valueOf(42));
 
+            // Custom assertions.
+            assertThat(collect)
+                .hasAverage(BigDecimal.valueOf(21.5d))
+                .hasMax(new BigDecimal("42"))
+                .hasMin(1d, EPSILON)
+                .hasSum(903d, EPSILON);
+            assertThat(collect).hasSum(903d, EPSILON);
+
         }
 
         @Test
@@ -223,6 +231,7 @@ class BigDecimalSummaryStatisticsTest {
 
             assertThat(collect.getCount()).isEqualTo(1_234_567L);
             assertThat(collect.getAverage().doubleValue()).isEqualTo(617_284d, EPSILON);
+
 //        BigDecimalSummaryStatisticsAssert.assertThat(collect).getAverage().isEqualTo(5.5d, EPSILON);
             assertThat(collect.getSum().doubleValue()).isEqualTo(762_078_456_028d, EPSILON);
             assertThat(collect.getMin()).isEqualTo(BigDecimal.ONE);