Java 类org.junit.internal.ExactComparisonCriteria 实例源码

项目:java-unit    文件:TestBase.java   
/**
 * Asserts that two objects (including arrays) are equal.
 * If they are not, an {@link AssertionError} is thrown with
 * the given message. If`expected` and `actual` are `null`,
 * they are considered equal.
 *
 * @param expected
 *              expected value, could be any object including array
 * @param actual
 *              actual value
 * @param message
 *              the failure message. `null` Okay
 * @param messageArgs
 *              the failure message arguments
 */
public static void eq(Object expected, Object actual, String message, Object ... messageArgs) {
    if (null == expected) {
        isNull(actual, message, messageArgs);
        return;
    }
    Class<?> expectedClass = expected.getClass();
    String userMessage = fmt(message, messageArgs);
    if (expectedClass.isArray()) {
        Class<?> actualClass = actual.getClass();
        if (!expectedClass.equals(actualClass)) {
            if (null == message || "".equals(message.trim())) {
                fail("arrays type differed\nExpected: %s\nActual  : %s",
                        expectedClass.getName(), actualClass.getName());
            } else {
                fail("%s: arrays type differed\nExpected: %s\nActual  : %s",
                        userMessage, expectedClass.getName(), actualClass.getName());
            }
        }
        new ExactComparisonCriteria().arrayEquals(fmt(message, messageArgs), expected, actual);
    } else {
        assertEquals(fmt(message, messageArgs), expected, actual);
    }
}
项目:java-unit    文件:TestBase.java   
/**
 * Asserts that two objects (including arrays) are equal.
 * If they are not, an {@link AssertionError} is thrown with
 * the given message. If`expected` and `actual` are `null`,
 * they are considered equal.
 *
 * @param expected
 *              expected value, could be any object including array
 * @param actual
 *              actual value
 */
public static void eq(Object expected, Object actual) {
    if (null == expected) {
        isNull(actual);
        return;
    }
    Class<?> expectedClass = expected.getClass();
    if (expectedClass.isArray()) {
        Class<?> actualClass = actual.getClass();
        if (!expectedClass.equals(actualClass)) {
            fail("arrays type differed\nExpected: %s\nActual  : %s", expectedClass.getName(), actualClass.getName());
        }
        new ExactComparisonCriteria().arrayEquals(null, expected, actual);
    } else {
        assertEquals(null, expected, actual);
    }
}
项目:tiny-serializer-java    文件:Helpers.java   
public static <T> CapturingSerialWriter roundtripArray(Serializer<T> serializer, T value)
  throws IOException {
  final CapturingSerialWriter out = new CapturingSerialWriter();
  serializer.serialize(out, value);
  final T result = serializer.deserialize(out.toSerialReader());
  new ExactComparisonCriteria().arrayEquals(null, value, result);
  return out;
}
项目:openjdk-jdk10    文件:GraalTest.java   
/**
 * Compares two given values for equality, doing a recursive test if both values are arrays of
 * the same type.
 *
 * @param message the identifying message for the {@link AssertionError}
 * @param delta the maximum delta between two doubles or floats for which both numbers are still
 *            considered equal.
 */
protected void assertDeepEquals(String message, Object expected, Object actual, double delta) {
    if (expected != null && actual != null) {
        Class<?> expectedClass = expected.getClass();
        Class<?> actualClass = actual.getClass();
        if (expectedClass.isArray()) {
            Assert.assertEquals(message, expectedClass, actual.getClass());
            if (expected instanceof int[]) {
                Assert.assertArrayEquals(message, (int[]) expected, (int[]) actual);
            } else if (expected instanceof byte[]) {
                Assert.assertArrayEquals(message, (byte[]) expected, (byte[]) actual);
            } else if (expected instanceof char[]) {
                Assert.assertArrayEquals(message, (char[]) expected, (char[]) actual);
            } else if (expected instanceof short[]) {
                Assert.assertArrayEquals(message, (short[]) expected, (short[]) actual);
            } else if (expected instanceof float[]) {
                Assert.assertArrayEquals(message, (float[]) expected, (float[]) actual, (float) delta);
            } else if (expected instanceof long[]) {
                Assert.assertArrayEquals(message, (long[]) expected, (long[]) actual);
            } else if (expected instanceof double[]) {
                Assert.assertArrayEquals(message, (double[]) expected, (double[]) actual, delta);
            } else if (expected instanceof boolean[]) {
                new ExactComparisonCriteria().arrayEquals(message, expected, actual);
            } else if (expected instanceof Object[]) {
                new ComparisonCriteria() {
                    @Override
                    protected void assertElementsEqual(Object e, Object a) {
                        assertDeepEquals(message, e, a, delta);
                    }
                }.arrayEquals(message, expected, actual);
            } else {
                Assert.fail((message == null ? "" : message) + "non-array value encountered: " + expected);
            }
        } else if (expectedClass.equals(double.class) && actualClass.equals(double.class)) {
            Assert.assertEquals((double) expected, (double) actual, delta);
        } else if (expectedClass.equals(float.class) && actualClass.equals(float.class)) {
            Assert.assertEquals((float) expected, (float) actual, delta);
        } else {
            Assert.assertEquals(message, expected, actual);
        }
    } else {
        Assert.assertEquals(message, expected, actual);
    }
}
项目:graal-core    文件:GraalTest.java   
/**
 * Compares two given values for equality, doing a recursive test if both values are arrays of
 * the same type.
 *
 * @param message the identifying message for the {@link AssertionError}
 * @param delta the maximum delta between two doubles or floats for which both numbers are still
 *            considered equal.
 */
protected void assertDeepEquals(String message, Object expected, Object actual, double delta) {
    if (expected != null && actual != null) {
        Class<?> expectedClass = expected.getClass();
        Class<?> actualClass = actual.getClass();
        if (expectedClass.isArray()) {
            Assert.assertEquals(message, expectedClass, actual.getClass());
            if (expected instanceof int[]) {
                Assert.assertArrayEquals(message, (int[]) expected, (int[]) actual);
            } else if (expected instanceof byte[]) {
                Assert.assertArrayEquals(message, (byte[]) expected, (byte[]) actual);
            } else if (expected instanceof char[]) {
                Assert.assertArrayEquals(message, (char[]) expected, (char[]) actual);
            } else if (expected instanceof short[]) {
                Assert.assertArrayEquals(message, (short[]) expected, (short[]) actual);
            } else if (expected instanceof float[]) {
                Assert.assertArrayEquals(message, (float[]) expected, (float[]) actual, (float) delta);
            } else if (expected instanceof long[]) {
                Assert.assertArrayEquals(message, (long[]) expected, (long[]) actual);
            } else if (expected instanceof double[]) {
                Assert.assertArrayEquals(message, (double[]) expected, (double[]) actual, delta);
            } else if (expected instanceof boolean[]) {
                new ExactComparisonCriteria().arrayEquals(message, expected, actual);
            } else if (expected instanceof Object[]) {
                new ComparisonCriteria() {
                    @Override
                    protected void assertElementsEqual(Object e, Object a) {
                        assertDeepEquals(message, e, a, delta);
                    }
                }.arrayEquals(message, expected, actual);
            } else {
                Assert.fail((message == null ? "" : message) + "non-array value encountered: " + expected);
            }
        } else if (expectedClass.equals(double.class) && actualClass.equals(double.class)) {
            Assert.assertEquals((double) expected, (double) actual, delta);
        } else if (expectedClass.equals(float.class) && actualClass.equals(float.class)) {
            Assert.assertEquals((float) expected, (float) actual, delta);
        } else {
            Assert.assertEquals(message, expected, actual);
        }
    } else {
        Assert.assertEquals(message, expected, actual);
    }
}
项目:jped-parent-project    文件:AssertJerseyBaseTest.java   
private void internalArrayEquals(final String message, final Object expecteds, final Object actuals)
        throws ArrayComparisonFailure {
    new ExactComparisonCriteria().arrayEquals(message, expecteds, actuals);
}
项目:sosiefier    文件:Assert.java   
/**
 * Asserts that two object arrays are equal. If they are not, an
 * {@link AssertionError} is thrown with the given message. If
 * <code>expecteds</code> and <code>actuals</code> are <code>null</code>,
 * they are considered equal.
 *
 * @param message the identifying message for the {@link AssertionError} (<code>null</code>
 * okay)
 * @param expecteds Object array or array of arrays (multi-dimensional array) with
 * expected values.
 * @param actuals Object array or array of arrays (multi-dimensional array) with
 * actual values
 */
private static void internalArrayEquals(String message, Object expecteds,
        Object actuals) throws ArrayComparisonFailure {
    new ExactComparisonCriteria().arrayEquals(message, expecteds, actuals);
}
项目:lcm    文件:Assert.java   
/**
 * Asserts that two object arrays are equal. If they are not, an
 * {@link AssertionError} is thrown with the given message. If
 * <code>expecteds</code> and <code>actuals</code> are <code>null</code>,
 * they are considered equal.
 *
 * @param message the identifying message for the {@link AssertionError} (<code>null</code>
 * okay)
 * @param expecteds Object array or array of arrays (multi-dimensional array) with
 * expected values.
 * @param actuals Object array or array of arrays (multi-dimensional array) with
 * actual values
 */
private static void internalArrayEquals(String message, Object expecteds,
        Object actuals) throws ArrayComparisonFailure {
    new ExactComparisonCriteria().arrayEquals(message, expecteds, actuals);
}
项目:Java-Thread-Affinity    文件:Assert.java   
/**
 * Asserts that two object arrays are equal. If they are not, an
 * {@link AssertionError} is thrown with the given message. If
 * <code>expecteds</code> and <code>actuals</code> are <code>null</code>,
 * they are considered equal.
 *
 * @param message   the identifying message for the {@link AssertionError} (<code>null</code>
 *                  okay)
 * @param expecteds Object array or array of arrays (multi-dimensional array) with
 *                  expected values.
 * @param actuals   Object array or array of arrays (multi-dimensional array) with
 *                  actual values
 */
private static void internalArrayEquals(String message, Object expecteds,
                                        Object actuals) throws ArrayComparisonFailure {
    new ExactComparisonCriteria().arrayEquals(message, expecteds, actuals);
}
项目:junit    文件:Assert.java   
/**
 * Asserts that two object arrays are equal. If they are not, an
 * {@link AssertionError} is thrown with the given message. If
 * <code>expecteds</code> and <code>actuals</code> are <code>null</code>,
 * they are considered equal.
 *
 * @param message the identifying message for the {@link AssertionError} (<code>null</code>
 * okay)
 * @param expecteds Object array or array of arrays (multi-dimensional array) with
 * expected values.
 * @param actuals Object array or array of arrays (multi-dimensional array) with
 * actual values
 */
private static void internalArrayEquals(String message, Object expecteds,
        Object actuals) throws ArrayComparisonFailure {
    new ExactComparisonCriteria().arrayEquals(message, expecteds, actuals);
}
项目:org.openntf.domino    文件:Assert.java   
/**
 * Asserts that two object arrays are equal. If they are not, an
 * {@link AssertionError} is thrown with the given message. If
 * <code>expecteds</code> and <code>actuals</code> are <code>null</code>,
 * they are considered equal.
 *
 * @param message the identifying message for the {@link AssertionError} (<code>null</code>
 * okay)
 * @param expecteds Object array or array of arrays (multi-dimensional array) with
 * expected values.
 * @param actuals Object array or array of arrays (multi-dimensional array) with
 * actual values
 */
private static void internalArrayEquals(String message, Object expecteds,
        Object actuals) throws ArrayComparisonFailure {
    new ExactComparisonCriteria().arrayEquals(message, expecteds, actuals);
}