diff --git a/gdsc-smlm/src/test/java/uk/ac/sussex/gdsc/smlm/math3/distribution/fitting/MultivariateGaussianMixtureExpectationMaximizationTest.java b/gdsc-smlm/src/test/java/uk/ac/sussex/gdsc/smlm/math3/distribution/fitting/MultivariateGaussianMixtureExpectationMaximizationTest.java index a7e9930fa..e64fc678f 100644 --- a/gdsc-smlm/src/test/java/uk/ac/sussex/gdsc/smlm/math3/distribution/fitting/MultivariateGaussianMixtureExpectationMaximizationTest.java +++ b/gdsc-smlm/src/test/java/uk/ac/sussex/gdsc/smlm/math3/distribution/fitting/MultivariateGaussianMixtureExpectationMaximizationTest.java @@ -80,7 +80,9 @@ void canComputeCovariance(RandomSeed seed) { MultivariateGaussianMixtureExpectationMaximization.covariance(means, data); final double[][] exp = new Covariance(data).getCovarianceMatrix().getData(); - Assertions.assertArrayEquals(exp, obs); + // Can be different if the means are different. Commons Math uses a double pass + // mean computation but this code uses a simple sum then divide. + TestAssertions.assertArrayTest(exp, obs, Predicates.doublesAreUlpClose(10)); } @Test