Tester les clés d'une réponse API JSON
Publié le 28/06/2022 • Actualisé le 28/06/2022
Dans ce bout de code, nous voyons comment tester la présence de clés d'une réponse API JSON. On peut utiliser l'assertion PHPUnit assertEqualsCanonicalizing()
. Comme on peut le voir, l'ordre des clés n'a pas d'importance puisque le tableau est normalisé avant que la comparaison soit effectuée.
/**
* @see ApiController::stats()
*/
public function testStats(): void
{
$stats = $this->repo->getArticlesCount();
$client = self::createClient();
$client->request('GET', '/stats');
self::assertResponseIsSuccessful();
self::assertResponseHeaderSame('content-type', 'application/json');
self::assertEqualsCanonicalizing(['posts', 'snippets'], array_keys($stats));
self::assertEqualsCanonicalizing(['snippets', 'posts'], array_keys($stats));
self::assertJsonContains([
'posts' => $stats['posts'],
'snippets' => $stats['snippets'],
]);
}
A vous de jouer !
Ces articles vous ont été utiles ? Vous pouvez m'aider à votre tour de plusieurs manières : (cliquez sur le lien "reply" dans à droite pour me contacter )
- Me remonter des erreurs ou typos.
- Me remonter des choses qui pourraient être améliorées.
- Aimez et repostez !
- Suivez moi sur Bluesky 🦋
- Inscrivez-vous au flux RSS.
- Cliquez sur les boutons Plus sur Stackoverflow pour me faire gagner des badges "annonceur" 🏅.
Merci et à très bientôt sur Strangebuzz ! 😉