Skip to content

Pratiques de dev

LeSim edited this page Jul 13, 2021 · 8 revisions

Pour les nouvelles contributions

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.

Pratiques de code

  • 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 superflue
  • c.a.d. pas d'injection de dépendance dans les constructeurs sauf 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)

Sur les PR

  • faites des petites PR. Si la PR est trop grosse (~ 200 lignes), découpez en plusieurs PR.
  • Le relecteur d'une PR peut prendre la main pour faire les modifs de formes
  • Les modifs de formes non détectées automatiquement sont optionnelles
  • On cherche à faire des petites PRs
  • 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

Clone this wiki locally