Aller au contenu

Tests

phil/safe-http
vendor/bin/phpunit packages/safe-http/tests
DomaineCe qui est couvert
Limits, ReadRuleLes valeurs par défaut, chaque borne et la valeur au-delà, des en-têtes sur deux lignes ou avec un caractère de contrôle
AddressGuardAdresses normalisées ; adresses IP sous toutes leurs écritures, identifiants, port 0, autres schémas, étiquettes seules et longueurs refusés ; redirections absolues, relatives, sans schéma et avec .. ; redirections vers d'autres schémas refusées
SafeHttpClient, SafeResponseLes limites dans chaque requête, le corps coupé à ses octets ou après sa marque — même coupée entre deux morceaux —, corps d'autres types non lus, statuts d'erreur comme réponses, HEAD, chaque sorte de redirection suivie et vérifiée, le compte des redirections, hôtes qui se résolvent vers la boucle locale, un réseau privé ou le point de terminaison de métadonnées refusés au départ et à une redirection, erreurs de transport, la durée totale à travers les redirections, reset()

Les tests utilisent le MockHttpClient de Symfony et des adresses fixes : aucun test ne résout de nom ni n'ouvre de connexion.

Fuzzing

La cible safe-http-addresses donne à la garde des adresses et des redirections que personne n'a écrites, à partir des germes de tests/Fuzz/corpus/safe-http-addresses : la première ligne comme adresse, la deuxième comme redirection à partir d'une adresse connue. Chacune donne une adresse qui se relit comme elle-même, ou RefusedAddress, jamais une autre exception.

composer fuzz -- safe-http-addresses