Skip to content

Commit abc599a

Browse files
Show property name on failing JSON schema assertions
1 parent f24db25 commit abc599a

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

src/Codeception/Module/REST.php

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -959,15 +959,19 @@ public function seeResponseIsValidOnJsonSchemaString(string $schema): void
959959
$validator->validate($responseObject, $schemaObject, JsonConstraint::CHECK_MODE_VALIDATE_SCHEMA);
960960

961961
$outcome = $validator->isValid();
962-
$error = '';
962+
$message = '';
963963
if (!$outcome) {
964-
$errors = $validator->getErrors();
965-
$error = array_shift($errors)["message"];
964+
foreach ($validator->getErrors() as $error) {
965+
if ($message !== '') {
966+
$message .= ', ';
967+
}
968+
$message .= sprintf("[Property: '%s'] %s", $error['property'], $error['message']);
969+
}
966970
}
967971

968972
Assert::assertTrue(
969973
$outcome,
970-
$error
974+
$message
971975
);
972976
}
973977

0 commit comments

Comments
 (0)