-
Notifications
You must be signed in to change notification settings - Fork 92
Pratiques de dev
LeSim edited this page Sep 22, 2021
·
8 revisions
Si c’est votre 1ère contribution, commencez par une toute petite Pr (par exemple de nettoyage), pour vous faire la main sur le processus.
- le code doit être testé, tout pr sans test sera a priori rejetée
- pas de code mort
- le code doit être simple, pas d’injection de dépendance non utilisée
- c.a.d. pas d'injection de dépendance dans les constructeurs
- un exception pourrait être prise en compte si 2 implémentations différentes (hors tests) sont injectés
- on mock directement les dépendances concernées (parce que ruby, c'est magique)
# Non
def initializer(http_service)
@http_service = http_service
end
def get
@http_service.get(url)
end
# Oui
def get
Typhoeus.get(url)
end
# spec
expect(Service).to receive(:do_stuff).and_return(true)
## ou même
expect_any_instance_of(Procedure).to receive(:procedure_overview).and_return(procedure_overview)
- faites des petites PR. Si la PR est trop grosse (> 200 lignes), découpez en plusieurs PR.
- chaque petite PR doit essayer d'apporter de la valeur au client, d'apporter une petite fonctionnalité.
- Le relecteur d'une PR peut prendre la main (après l'avoir demandé) pour faire les modifs de formes
- Les modifs de formes non détectées automatiquement sont optionnelles
- Néanmoins, les commits de clean sont autorisés au sein de ces petites PRs
- Les remarques sur l’amélioration du code ne concernant pas directement la PR sont optionnelles
- faire des petits commits, homogène et en essayant de ne pas mélanger les sujets (par exemple, un commit pour du renommage, un commit pour un ajout de méthode + test, un commit pour l'ui)