Esse é um projeto para o conteúdo da semana 16, sobre RTL
.
Crie um fork desse projeto e para isso siga esse tutorial de como realizar um fork.
Após feito o fork, clone o repositório criado para o seu computador.
Rode o npm install
.
Vá para a branch master do seu projeto e execute o comando:
git branch
Verifique se as seguintes branchs apareceram:
exercise-one
exercise-2
exercise-3
- Cada branch dessas será um exercício.
- Mude para a branch
exercise-one
com o comandogit checkout exercise-one
. É nessa branch que você realizará a solução para o exercício 1, e assim por diante.
Observe o que deve ser feito nas instruções para cada exercício.
Após a solução dos exercícios, abra um PR no repositório e se quiser mergear para a master, sinta-se a vontade!
Atenção! Quando for criar o PR você irá se deparar com essa tela:
É necessário realizar uma mudança. Clique no base repository como na imagem abaixo:
Mude para o seu repositório. Seu nome estará na frente do nome dele, por exemplo: antonio/TicTacToe
. Depois desse passo a página deve ficar assim:
Agora basta criar o PULL REQUEST clicando no botão Create Pull Request
.
Para cada PR realize esse processo.
Teste as configurações iniciais do jogo, como ele começa:
- Campos vazios;
- Sem mensagem de Fim de jogo;
- 9 Casas renderizadas.
Fique livre para adicionar novos testes.
Agora além de realizar alguns testes será necessário realizar algumas funcionalidades. O arquivo TicTacToe.js possuí algumas informações de como o jogo deve funcionar.
- Dois jogadores jogaram o jogo;
- A cada clique em uma casa o jogador deve ser mudado;
- Para cada jogador deverá possuir uma marcação (as imagens que estão no repositório, x.png, o.svg);
- Ao clicar na casa escolhida, a casa deve ser modificada e possuir a marcação do jogador, X ou O;
- Ao clicar em uma casa já marcada, nada deve acontecer;
- AS casas marcadas não podem ser modificadas;
Teste o comportamento de cada casa, alguns exemplos:
- O símbolo mudar quando clica em uma e depois em outra, mostrando a troca do jogador;
- Casa não pode ser mudada depois de escolhida por algum jogador;
Caso tenha dúvida volte no conteúdo ou olhe na documentação, lembre que abordamos apenas algumas querys, tem outras que podem ser utilizadas.
Agora você fará funcionalidade de acordo com o teste já criado para ela. A funcionalidade deve ser criada no arquivo TicTacToe.js, boa parte dele já está criado, fique atento com as instruções passadas
Precisamos saber quando que o jogo acaba, os testes já foram realizados, mas se roda-lós verá que nenhum passa. Essa funcionalidade ainda não está pronta e precisa ser criada.
Crie a aplicação observando os teste, eles te guiaram para realiza-lá.
Bônus - Nossos testes não cobrem caso de empate ou quem foi o ganhador.
- Crie uma mensagem para ver quem é o vencedor ou quando acontecer o empate.
- Crie os teste para essa nova funcionalidade.
- Adicione um botão para recomeçar o jogo. Crie os teste para ele.