{"action":"opened","issue":{"url":"https://api.github.com/repos/lanmomo/lanmomo-website/issues/272","labels_url":"https://api.github.com/repos/lanmomo/lanmomo-website/issues/272/labels{/name}","comments_url":"https://api.github.com/repos/lanmomo/lanmomo-website/issues/272/comments","events_url":"https://api.github.com/repos/lanmomo/lanmomo-website/issues/272/events","html_url":"https://github.com/lanmomo/lanmomo-website/issues/272","id":116402837,"number":272,"title":"app#set_app_commit()","user":{"login":"fxleblanc","id":5315391,"avatar_url":"https://avatars.githubusercontent.com/u/5315391?v=3","gravatar_id":"","url":"https://api.github.com/users/fxleblanc","html_url":"https://github.com/fxleblanc","followers_url":"https://api.github.com/users/fxleblanc/followers","following_url":"https://api.github.com/users/fxleblanc/following{/other_user}","gists_url":"https://api.github.com/users/fxleblanc/gists{/gist_id}","starred_url":"https://api.github.com/users/fxleblanc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fxleblanc/subscriptions","organizations_url":"https://api.github.com/users/fxleblanc/orgs","repos_url":"https://api.github.com/users/fxleblanc/repos","events_url":"https://api.github.com/users/fxleblanc/events{/privacy}","received_events_url":"https://api.github.com/users/fxleblanc/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-11-11T19:20:02Z","updated_at":"2015-11-11T19:20:02Z","closed_at":null,"body":"## Problème\r\nPour tester cette méthode, il est impossible de hardcoder la valeur de test car à chaque commit, la valeur va changer.\r\n\r\n## Solution\r\nIl faut simplement utiliser le même code de la méthode testée pour générer une valeur de comparaison dans le test.\r\n\r\n## Justification\r\nAu final, le test est là pour voir si la méthode APPELE bien le code qu'elle est supposée appeler, sans douter du bon fonctionnement de la librairie appelée. En plus, la seule façon de savoir si la valeur retournée est valide dépend d'une condition non controllée par le test.\r\n\r\nLe défaut apparent de cette approche pourrait être que si la librairie change son fonctionnement, le test ne pourra pas le détecter. Encore une fois, le test n'est pas là pour voir si la librairie fonctionne bien, elle cherche simplement à savoir si le test APPELE bien le code. Ça peut sembler superflu mais d'une part, le test va augmenter la couverture de code et de plus, si jamais on ajoute de la logique dans la méthode(même si c'est peu probable), le test va servir à savoir si la logique affecte le cas évalué par le test."}}