BDD :

userCanGetNewQuestion()

   Langage naturel :
Lorsque L'utilisateur demande une question
Quand il reçoit une question
Alors l'utilisateur reçoit une question correspondante a ses tags

userCannotGetNewQuestionIfNotAnswered()

    Langage naturel :
Lorsque  l'utilisateur demande une question
Et si une question est en attente de réponse
Quand je demande une nouvelle question
Alors je n'obtient pas de nouvelle question

userCanAnswerQuestion()

    Langage naturel :
Lorsque l'utilisateur demande une question
Quand il la reçoit
Et qu'il donne une réponse valide
Alors il recoit la correction
Et il gagne les points de la question

ATDD

userAnswerIsCreatedOnResponse()

    Langage naturel :
L'utilisateur demande une question
L'utilisateur réponds a la question
La réponse est créée automatiquement

gainedPointsDecreaseWhenTheQuestionIsAnsweredSeveralTime()

    Langage naturel :
L'utilisateur demande une question
L'utilisateur réponds a la question une première fois
Il obtient des points
Puis réponds une seconde fois a la même question
Il obtient moins de points

nextQuestionTagIsOneOfTheUsersTags()

    Langage naturel :
L'utilisateur demande une question
La question possède au moins un tag en commun avec l'utilisateur