`TestRoomCreate` fails if the underlying server fails to deserialise an integer room version instead of validating it

Ouverte Adaptée aux débutants
#952 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 2 jours

Personne n'a encore pris cette issue.

Évaluation

Difficulté
1/5
Temps estimé
1-3 heures
Accessibilité débutants
78/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
go
Domaine
testing-qa

Piste de recherche

L'assertion en échec se trouve dans le sous-test POST /createRoom rejects attempts to create rooms with numeric versions de TestRoomCreate, dans apidoc_room_create_test.go. Lisez comment ce test fait correspondre la clé errcode, et comment les autres cas de rejet du même fichier acceptent d'autres codes. La tâche est terminée lorsque le sous-test réussit avec une réponse du serveur M_NOT_JSON ou M_BAD_JSON pour une version de salon numérique, et que le test est relancé pour le confirmer.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

If a /createRoom request fails to be deserialised into a strongly typed struct because the room version parameter expects a string, but is given an integer, the server will return M_NOT_JSON. However, TestRoomCreate/Parallel/POST_/createRoom_rejects_attempts_to_create_rooms_with_numeric_versions expects M_BAD_JSON instead, which requires that the deserialiser is allowed to ignore incorrect types.

  ❌ TestRoomCreate/Parallel/POST_/createRoom_rejects_attempts_to_create_rooms_with_numeric_versions (FAIL; 230ms)
    apidoc_room_create_test.go:195: MatchResponse key 'errcode' got 'M_NOT_JSON' (type string) want 'M_BAD_JSON' (type string) - http://127.0.0.1:33163/_matrix/client/v3/createRoom => {"errcode":"M_NOT_JSON","error":"failed to parse body as JSON: json: unable to unmarshal JSON number into Go id.RoomVersion within \"/room_version\""}

Accepting M_NOT_JSON and M_BAD_JSON would fix this.

Langage dominant
Go
Étoiles
101
Forks
73
Merge moyen
1 j 2 h
PR mergées (30 j)
3

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de matrix-org/complement

Toutes les issues de matrix-org/complement

Issues similaires

Plus d'issues Go

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.