diff --git a/spring-graphql-test/src/main/java/org/springframework/graphql/test/tester/DefaultGraphQlTester.java b/spring-graphql-test/src/main/java/org/springframework/graphql/test/tester/DefaultGraphQlTester.java index d6b69411..003f7c3b 100644 --- a/spring-graphql-test/src/main/java/org/springframework/graphql/test/tester/DefaultGraphQlTester.java +++ b/spring-graphql-test/src/main/java/org/springframework/graphql/test/tester/DefaultGraphQlTester.java @@ -540,7 +540,8 @@ final class DefaultGraphQlTester implements GraphQlTester { public EntityList contains(E... values) { doAssert(() -> { List expected = Arrays.asList(values); - AssertionErrors.assertTrue("List at path '" + getPath() + "' does not contain " + expected, + AssertionErrors.assertTrue( + "Expecting list " + getEntity() + " at path '" + getPath() + "' to contain " + expected, getEntity().containsAll(expected)); }); return this; @@ -552,7 +553,7 @@ final class DefaultGraphQlTester implements GraphQlTester { doAssert(() -> { List expected = Arrays.asList(values); AssertionErrors.assertTrue( - "List at path '" + getPath() + "' should not have contained " + expected, + "Expecting list " + getEntity() + " at path '" + getPath() + "' to not contain " + expected, !getEntity().containsAll(expected)); }); return this; @@ -563,18 +564,17 @@ final class DefaultGraphQlTester implements GraphQlTester { public EntityList containsExactly(E... values) { doAssert(() -> { List expected = Arrays.asList(values); - List actual = getEntity(); AssertionErrors.assertTrue( - "List at path '" + getPath() + "' should have contained exactly " + expected + ", " + - "but did contain " + actual, - actual.equals(expected)); + "Expecting list " + getEntity() + " at path '" + getPath() + "' to contain exactly " + expected, + getEntity().equals(expected)); }); return this; } @Override public EntityList hasSize(int size) { - doAssert(() -> AssertionErrors.assertTrue("List at path '" + getPath() + "' should have size " + size, + doAssert(() -> AssertionErrors.assertTrue( + "Expecting list " + getEntity() + " at path '" + getPath() + "' to have size == " + size, getEntity().size() == size)); return this; } @@ -582,7 +582,7 @@ final class DefaultGraphQlTester implements GraphQlTester { @Override public EntityList hasSizeLessThan(int size) { doAssert(() -> AssertionErrors.assertTrue( - "List at path '" + getPath() + "' should have size less than " + size, + "Expecting list " + getEntity() + " at path '" + getPath() + "' to have size < " + size, getEntity().size() < size)); return this; } @@ -590,7 +590,7 @@ final class DefaultGraphQlTester implements GraphQlTester { @Override public EntityList hasSizeGreaterThan(int size) { doAssert(() -> AssertionErrors.assertTrue( - "List at path '" + getPath() + "' should have size greater than " + size, + "Expecting list " + getEntity() + " at path '" + getPath() + "' to have size > " + size, getEntity().size() > size)); return this; } diff --git a/spring-graphql-test/src/test/java/org/springframework/graphql/test/tester/GraphQlTesterTests.java b/spring-graphql-test/src/test/java/org/springframework/graphql/test/tester/GraphQlTesterTests.java index 7aacb44e..dddf261d 100644 --- a/spring-graphql-test/src/test/java/org/springframework/graphql/test/tester/GraphQlTesterTests.java +++ b/spring-graphql-test/src/test/java/org/springframework/graphql/test/tester/GraphQlTesterTests.java @@ -179,8 +179,11 @@ public class GraphQlTesterTests extends GraphQlTesterTestSupport { assertThatThrownBy(() -> entityList.containsExactly(leia, han)) .as("Should be exactly the same order") - .hasMessageStartingWith("List at path 'me.friends' should have contained exactly") - .hasMessageContaining("but did contain "); + .hasMessage("Expecting list " + + "[MovieCharacter[name='Han Solo'], MovieCharacter[name='Leia Organa']] " + + "at path 'me.friends' to contain exactly " + + "[MovieCharacter[name='Leia Organa'], MovieCharacter[name='Han Solo']]\n" + + "Request: document='{me {name, friends}}'"); response.path("me.friends") .entityList(new ParameterizedTypeReference() {})