[TECH] Enlever l'injection des sérialisers dans les controlleurs (devcomp)#16474
Open
bpetetot wants to merge 1 commit into
Open
[TECH] Enlever l'injection des sérialisers dans les controlleurs (devcomp)#16474bpetetot wants to merge 1 commit into
bpetetot wants to merge 1 commit into
Conversation
|
Choisir les applications à déployer :
Important N'oubliez pas de déployer l'API pour pouvoir accéder aux fronts et/ou à l’API MaDDo. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🚙 Problème
Parfois on utilise directement les serializers dans les controlleurs, parfois on les injecte dans un attribut
dependencies.Mais les serialisers sont des fonctions pures (déterministes et sans effet de bord), il y a peu d'intérêt de les injecter et mocker dans les tests unitaires.
🍃 Proposition
Il y a peu d'utilité à cette injection, je propose de simplifier et directement utiliser les serialisers dans les contrôleurs (sans injection).
Bounded contexts dans cette PR dont on a modifié les controllers:
devcompImportant
Ça change la façon dont sont fait les tests unitaires des controlleurs. On ne peut plus mocker par des
Symbolles entrée/sortie des sérialisers.C'est compréhensible de souhaiter cette façon de faire, donc on peut ne pas merger cette PR si vous souhaitez conserver cette méthode de test. L'avantage est que le test n'est pas indépendant du modèle, mais l'inconvénient est qu'on test l'implémentation plutôt que le comportement.
Est-ce que les controlleurs devraient avoir des tests unitaires? Est-ce que ces tests ne sont pas déjà couvert pas les tests d'acceptance de la couche application ?
🦵 Remarques
Scout: on en profite pour simplifier l'export des controlleurs en exportant directement l'objet du controlleur.
🔗 Pour tester
CI Ok