code: public <T extends Comparable<T>> void assertEqual(Description description, T actual, T expected) {
      assertNotNull(description, actual);
      if (!areEqual(actual, expected)) {
        throw shouldBeEqual(actual, expected).newAssertionError(description);
      }
    }
docs: Asserts that two values are equal by invoking {@link Comparable#compareTo(Object)}.
  
  @param description the description of the <em>actual</em> value.
  @param actual the <em>actual</em> value.
  @param expected the <em>expected</em> value.
  @throws AssertionError if the <em>actual</em> value is {@code null}.
  @throws AssertionError if the <em>actual</em> value is not equal to the expected one. This method will throw a
  {@code org.junit.ComparisonFailure} instead if JUnit is in the classpath and the expected and actual
  values are not equal.