---
# System prepended metadata

title: 'BDD :'

---

 # 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
> ```
