ReflectionAssert { public static void assertReflectionEquals( Object expected, Object actual, ReflectionComparatorMode... modes ) throws AssertionFailedError { assertReflectionEquals(null, expected, actual, modes); }  static void assertLenientEquals(Object expected, Object actual); static void assertReflectionEquals(
      Object expected,
      Object actual,
      ReflectionComparatorMode... modes
  ); static void assertLenientEquals(String message, Object expected, Object actual); static void assertReflectionEquals(
      String message,
      Object expected,
      Object actual,
      ReflectionComparatorMode... modes
  ); static void assertPropertyLenientEquals(
      String propertyName,
      Object expectedPropertyValue,
      Object actualObject
  ); static void assertPropertyReflectionEquals(
      String propertyName,
      Object expectedPropertyValue,
      Object actualObject,
      ReflectionComparatorMode... modes
  ); static void assertPropertyLenientEquals(
      String message,
      String propertyName,
      Object expectedPropertyValue,
      Object actualObject
  ); static void assertPropertyReflectionEquals(
      String message,
      String propertyName,
      Object expectedPropertyValue,
      Object actualObject,
      ReflectionComparatorMode... modes
  ); static void assertPropertyLenientEquals(
      String propertyName,
      Collection<?> expectedPropertyValues,
      Collection<?> actualObjects
  ); static void assertPropertyReflectionEquals(
      String propertyName,
      Collection<?> expectedPropertyValues,
      Collection<?> actualObjects,
      ReflectionComparatorMode... modes
  ); static void assertPropertyLenientEquals(
      String message,
      String propertyName,
      Collection<?> expectedPropertyValues,
      Collection<?> actualObjects
  ); static void assertPropertiesNotNull(String message, Object object); static void assertPropertyReflectionEquals(
      String message,
      String propertyName,
      Collection<?> expectedPropertyValues,
      Collection<?> actualObjects,
      ReflectionComparatorMode... modes
  ); static void assertAccessablePropertiesNotNull(String message, Object object);  }
@Test void testAssertReflectionEquals_equals() { assertReflectionEquals(testObjectAString, testObjectBString); }
@Test void testAssertReflectionEquals_equalsIgnoredDefault() { testObjectAString.setString1(null); testObjectBString.setString1("xxxxxx"); assertReflectionEquals(testObjectAString, testObjectBString, ReflectionComparatorMode.IGNORE_DEFAULTS); }
@Test void testAssertReflectionEquals_equalsMessage() { assertReflectionEquals("a message", testObjectAString, testObjectBString); }
@Test void testAssertReflectionEquals_notEqualsDifferentValues() { MoreAssertions.assertFailing(() -> assertReflectionEquals(testObjectAString, testObjectDifferentValueString) ); }
@Test void testAssertReflectionEquals_leftNull() { MoreAssertions.assertFailing(() -> assertReflectionEquals(null, testObjectAString) ); }
@Test void testAssertReflectionEquals_rightNull() { MoreAssertions.assertFailing(() -> assertReflectionEquals(testObjectAString, null) ); }
@Test void testAssertReflectionEquals_null() { assertReflectionEquals(null, null); }
@Test void testAssertReflectionEquals_equalsLenientOrder() { assertReflectionEquals( asList("element1", "element2", "element3"), asList("element3", "element1", "element2"), ReflectionComparatorMode.LENIENT_ORDER ); }
@Test void testAssertReflectionEquals_equalsLenientOrderSet() { assertReflectionEquals( asSet(testObjectAString, testObjectAIntString), asSet(testObjectBIntString, testObjectBString), ReflectionComparatorMode.LENIENT_ORDER, ReflectionComparatorMode.IGNORE_DEFAULTS ); }