Regras

Funcionalidade: Setup do Jogo
Eu, como facilitadora de BDD Warriors,
Quero fazer o setup inicial do jogo,
Para que possamos jogar
 

Cenário: Jogadoras devem receber 5 cartas
Dado que há entre 2 e 6 jogadoras
E as cartas foram bem embaralhadas
E cada jogadora tem sua pilha de fichas de identificação
Quando forem distribuídas as cartas
Então cada jogadora deve ter 5 cartas na mão, voltadas para si
E as demais cartas devem formar a pilha de compras, voltadas para baixo
 

Cenário: Jogadora que viu filme de Ficção Científica/Fantasia/Terror mais recentemente começa o jogo
Dado uma jogadora Alice que assistiu “Cidade das Sombras” na semana passada
E uma jogadora Bobbie que assistiu “O Hobbit” no mês passado
E uma jogadora Carol que assistiu “Velozes e Furiosos” ontem
Quando o jogo iniciar
Então Alice deve fazer a primeira jogada
E o jogo deve prosseguir em sentido horário
 
 
Funcionalidade: Jogar o jogo
Eu, como jogadora de BDD Warriors,
Quero jogar as cartas
Para conseguir fazer pontos e ganhar o jogo
 

Esquema de Cenário: Jogadora pode jogar uma carta de cláusula qualquer para iniciar novo cenário
Dado que é a vez da jogadora “Alice “
E ela tem uma carta com a cláusula <tipo>
Quando ela começar um novo cenário com essa carta
Então esta jogada deve ser considerada válida
E a jogadora deve colocar sua ficha sobre a carta jogada
E deve comprar uma nova carta ficando com 5 na mão
Exemplos:
| tipo    |
| Então   |
| E       |
| Dado    |
| Quando  |
 

Cenário: Jogadora pode jogar uma carta em um cenário iniciado por outra pessoa
Dado que a jogadora Alice iniciou um cenário
E é a vez da jogadora Carol
Quando Carol jogar uma carta no cenário de Alice
Então essa jogada deve ser considerada válida
E Carol deve colocar sua ficha sobre a carta jogada
E deve comprar uma nova carta ficando com 5 na mão
 

Cenário: Jogadora pode iniciar cenário mesmo com cenários já existentes
Dado que a jogadora Alice iniciou um cenário
E é a vez da jogadora Carol
Quando Carol iniciar um novo cenário
Então essa jogada deve ser considerada válida
E Carol deve colocar sua ficha sobre a carta jogada
E deve comprar uma nova carta ficando com 5 na mão
 

Cenário: Jogadora descarta uma mão inútil
Dado que a jogadora Bobbie não tem nada de útil na mão
Quando ela descartar toda as cartas na pilha de lixo
Então ela deve comprar novas cartas ficando com 5 na mão
E deve encerrar sua jogada
 

Cenário: Jogadoras contabilizam pontos ao completar cenário
Dado o seguinte cenário incompleto
|Carta                   | Pontos | Jogadora|
|Dado um vampiro         | 1      | Alice |
|Então ele deve virar pó | 1      | Carol|
 E a jogadora Bobbie tem uma carta “Quando for atingido por uma estaca” de 1 ponto
Quando a jogadora Bobbie jogar a carta nesse cenário
Então Bobbie deve avançar 2 pontos por completar o cenário
E Bobbie deve avançar 1 ponto referente à sua carta
E Alice deve avançar 1 ponto referente à sua carta
E Carol deve avançar 1 ponto referente à sua carta
 
 

Funcionalidade: Completar um cenário
Eu, como jogadora de BDD Warriors,
Quero chegar num consenso sobre o cenário
Para que o cenário seja o melhor possível
 

Cenário: Um cenário só é considerado completo se fizer sentido
Dado que uma jogadora jogou uma carta em um cenário
E o cenário contém uma cláusula Dado, uma Quando e uma Então
E a jogadora leu o cenário em voz alta completando as frases em branco
Quando as demais jogadoras concordarem que o cenário é lógico e segue as regras de BDD
Então o cenário deve ser considerado completo
E os pontos devem ser contabilizados
E o cenário deve ser recolhido para a pilha de descarte
 

Cenário: Jogadora deve buscar alternativa em caso de discordância
Dado que Alice tentou completar um cenário
Quando as demais jogadoras não concordarem
Então Alice deve receber a opção de melhorar o cenário ou fazer outra jogada
 
 

Funcionalidade: Cartas especiais
Eu, como jogadora de BDD Warriors
Quero jogar cartas especiais
Para ganhar uma vantagem estratégica
 

Esquema de Cenário: Leitura de carta coringa deve incluir a palavra-chave
Dado um cenário com apenas uma cláusula <tipo> faltando
E todas as demais cláusulas do cenário já estão presentes
Quando a carta “ninja” for colocada nesse cenário
Então a carta coringa deve substituir a cláusula <tipo>
E <frase> deve ser considerada <status>
Exemplos:
| tipo   | frase                               | status   |
| Dado   | Dado um ninja                       | válida   |
| Então  | Então o ninja deve subir no telhado | válida   |
| Dado   | Dado um ninja com um shuriken       | válida   |
| Quando | Quando o ninja chegar em casa       | válida   |
| Dado   | Dado um pirata no seu navio         | inválida |

Esquema de Cenário: Cartas coringas devem obrigatoriamente completar um cenário
Dado um cenário com as cartas <clausula1> e <clausula2> faltando
Quando uma jogadora tentar jogar uma carta coringa
Então esta jogada deve ser considerada inválida
E a jogadora deve escolher outra jogada
Exemplos:
| clausula1 | clausula2 |
| Dado      | Quando    |
| Quando    | Então     |
| Dado      | Então     |

Esquema de Cenário: Jogador joga uma carta de ação
Dado que é a vez de uma jogadora
Quando ela jogara carta de ação <carta>
Então as jogadoras devem seguir as instruções daquela carta específica
E encerrar a vez da jogadora atual
Exemplos:
|carta                       |
|Trocar uma carta com alguém |
|Pegar uma cláusula do lixo  |
 
 

Funcionalidade: Encerramento do jogo
Eu, como facilitadora de BDD Warriors
Quero encerrar o jogo
Para poder sair para o almoço

Cenário: Jogo termina quando um jogador atingir um limite de pontos pré-estabelecido
Dado que o limite estabelecido é de “15” pontos
E que Alice tem “10” pontos
E que Bobbie tem “13” pontos
Quando Bobbie marcar “2” pontos
Então o jogo deve ser encerrado com Bobbie como vencedora
 

Cenário: Jogo termina quando o jogo atingir um limite de tempo pré-estabelecido
Dado que o limite estabelecido é de “30” minutos
E que Alice tem “8” pontos
E que Bobbie tem “4” pontos
Quando o tempo decorrido atingir o limite
Então o jogo deve ser encerrado com Alice como vencedora