Closed candalc closed 3 years ago
Merci pour ce scénario @candalc @Samnoel95.
Vous avez une erreur à la ligne 33:
features/viewpoint_authorize_editing.feature: (33:1): expected: #EOF, #TableRow, #DocStringSeparator, #StepLine, #TagLine, #ExamplesLine, #ScenarioLine, #RuleLine, #Comment, #Empty, got 'Fonctionnalité: Ajouter un contributeur à la liste d'édition d'un point de vue' (Cucumber::Core::Gherkin::ParseError)
Comme l'indique le message, cucumber ne s'attendait pas à trouver Fonctionnalité
à cette ligne. C'est parce que normalement, il n'y en a qu'une par fichier.
Je vous conseille donc :
- de décrire en français l'ensemble des cas pour
A
,B
etX
,- de vérifier que vous avez l'histoire complète pour montrer ce qui se passe, autrement dit pour voir ce qui change (ou pas) entre la situation initiale (avant le QUAND) et la situation finale (après le QUAND).
Après réécriture des scénarios, on aboutit à la version suivante des scénarios écrits en français. Pour vérifier que l'utilisateur peut bien modifier un point de vue, on s'appuie sur le fait que le bouton cliquable de modification d'un point de vue redirige vers la page avec l'url qui se termine par .../viewpoint/id_viewpoint
. On aurait donc :
Scénario : L'utilisateur est noté sur la liste d'édition du point de vue
Scénario : Le contributeur est l'auteur d'un point de vue
Scénario : La liste d'édition du point de vue n'est pas définie
Scénario : L'utilisateur n'est pas noté sur la liste d'édition du point de vue
Scénario : L'utilisateur n'est pas connecté
Scénario : L'utilisateur ajoute un contributeur à la liste d'édition
Que pensez-vous de cette ébauche de scénarios @benel ?
Merci @candalc pour cette nouvelle version de vos scénarios. Quand je disais "en français", c'était pour éviter le caractère un peu formel de Cucumber : c'était pour réduire un peu la difficulté de faire un scénario parfait dès le début... Mais bon, ce n'est pas grave. Si ça vous va ainsi...
Après réécriture des scénarios, on aboutit à la version suivante des scénarios écrits en français. Pour vérifier que l'utilisateur peut bien modifier un point de vue, on s'appuie sur le fait que le bouton cliquable de modification d'un point de vue redirige vers la page avec l'url qui se termine par .../viewpoint/id_viewpoint. On aurait donc :
Ce n'est pas le choix qui a été fait jusqu'à maintenant dans l"interface de Porphyry : on peut essayer de tout faire (même sans être connecté). C'est juste que ça n'aura aucun effet. Autrement dit, on a privilégié l'exploration de l'interface au profit de la certitude que l'on n'est pas en train de perdre son temps. Comme tout choix de conception, il est discutable. Cependant, si on choisissait de faire un autre choix aujourd'hui, il faudrait appliquer ce nouveau choix sur l'ensemble de l'application.
L'intérêt pour vous du choix de conception qui a été fait c'est que cela rend plus facile la description du comportement :
Soit "Truc" un truc dont les contributeurs sont "alice|charly"
Et "bob" l'utilisateur connecté
Quand l'utilisateur machine "Truc"
Alors "Truc" n'est pas machiné
Je vous laisser reformuler vos scénarios ainsi (et cette fois-ci avec des noms d'utilisateur et de points de vue).
Scénario : L'utilisateur n'est pas connecté
Inutile d'écrire ce scénaro. Ceci est un problème d'authentification et non d'autorisation. C'est déjà géré.
Content
Scenarios (Gherkin) which illustrate the feature "Authorize a contributor to edit a viewpoint" (ticket #183) done with @Samnoel95. Since the ticket corresponds to a new feature, we put the scenarios in a new file named
viewpoint_authorize_editing.feature
, according to the other scenarios files in thefeatures
folder.Checklist
Please check that your pull request is correct:
FEATURE
for a behaviour allowing a user to do something new,FIX
for a behaviour which has been changed in order to meet user’s expectations,TEST
when it concerns an acceptance test,PROCESS
for a change in the way the software is built, tested, deployed,DOC
when it concerns only internal documentation (however it is better to combine it with the contribution that required this documentation change),:
) with one space after and no space before,manage
),should
).(closes #xx)
if xx is a feature ticket (and the commit is a complete implementation),(fixes #xx)
if xx is a fix ticket (and the commit is a complete fix),(see #xx)
otherwise,