Java 类org.hamcrest.number.IsCloseTo 实例源码

项目:mrgeo    文件:ModeAggregatorTest.java   
@Test
@Category(UnitTest.class)
public void testDouble()
{
  double[] values = {0.21, 0.32, 0.32, 0.54};
  double nodata = Double.NaN;
  double result;
  Aggregator agg = new ModeAggregator();

  //Test normal case
  result = agg.aggregate(values, nodata);
  assertEquals(0.32, result, epsilon);

  //Test nodata cases
  values[0] = nodata;
  result = agg.aggregate(values, nodata);
  assertEquals(0.32, result, epsilon);

  values[1] = nodata;
  result = agg.aggregate(values, nodata);
  assertThat((double) result, AnyOf.anyOf(IsCloseTo.closeTo(0.32f, epsilon), IsCloseTo.closeTo(0.54f, epsilon)));

  values[2] = nodata;
  result = agg.aggregate(values, nodata);
  assertEquals(0.54, result, epsilon);

  values[3] = nodata;
  result = agg.aggregate(values, nodata);
  assertEquals(nodata, result, epsilon);

}
项目:mrgeo    文件:ModeAggregatorTest.java   
@Test
@Category(UnitTest.class)
public void testFloat()
{
  float[] values = {0.21f, 0.32f, 0.32f, 0.54f};
  float nodata = -9999.0f;
  float result;
  Aggregator agg = new ModeAggregator();

  //Test normal case
  result = agg.aggregate(values, nodata);
  assertEquals(0.32, result, epsilon);

  //Test nodata cases
  values[0] = nodata;
  result = agg.aggregate(values, nodata);
  assertEquals(0.32, result, epsilon);

  values[1] = nodata;
  result = agg.aggregate(values, nodata);
  //assertEquals(0.54, result, epsilon);
  assertThat((double) result, AnyOf.anyOf(IsCloseTo.closeTo(0.32f, epsilon), IsCloseTo.closeTo(0.54f, epsilon)));

  values[2] = nodata;
  result = agg.aggregate(values, nodata);
  assertEquals(0.54, result, epsilon);

  values[3] = nodata;
  result = agg.aggregate(values, nodata);
  assertEquals(nodata, result, epsilon);

}
项目:MFIBlocking    文件:ClusterSimilarityTest.java   
@Test
public void testCalcRecordSimilarityInBlock_manyItems() throws Exception {
    Integer recordId = 21;
    List<String> mockedList = PowerMockito.mock(List.class);
    Map<Integer, List<String>> map = Maps.newHashMap(ImmutableMap.of(21, mockedList,
            22, mockedList, 2, mockedList, 4, mockedList, 1, mockedList));
    SimilarityCalculator similarityCalculator = PowerMockito.mock(SimilarityCalculator.class);

    PowerMockito.when(similarityCalculator.calcRecordsSim(Mockito.anyList(), Mockito.anyList())).thenReturn(0.5F, 0.4F, 0F, 0.6F);
    float recordProbability = ClusterSimilarity.calcRecordSimilarityInCluster(recordId, map, similarityCalculator);

    MatcherAssert.assertThat((double) recordProbability, IsCloseTo.closeTo(1.5F, 0.001));
}
项目:akka-metrics    文件:TimedActorTest.java   
@Test
public void shouldHaveMedianValuesAround10() throws Exception {
    new JavaTestKit(testActorSystem) {{
        ActorRef myTimedActor = getSystem().actorOf(Props.create(MyTimedActor.class, metricRegistry));

        sendMessages(myTimedActor);

        expectNoMsg(duration("55 ms"));
        String key = metricRegistry.getTimers().firstKey();
        long medianInNano = (long) metricRegistry.getTimers().get(key).getSnapshot().getMean();
        assertThat((double) TimeUnit.NANOSECONDS.toMillis(medianInNano), IsCloseTo.closeTo(10d, 2d));
    }};
}
项目:es6draft    文件:IsNumberCloseTo.java   
public IsNumberCloseTo(double value, double error) {
    this.closeTo = new IsCloseTo(value, error);
}