# Projeto exemplo: Calculadora
## Passo 1: Ler o projeto
- receber dois numeros e a operacao (soma, subtracao, multiplicacao e divisao)
- fazer as validacoes necessarias
- Os numeros impares devem estar coloridos azul e os pares devem ser vermelhos.
## Passo 2: Criar tarefas
### Tarefa 1
- Programa recebe dois numeros faz a soma deles e retorna na tela.
### Tarefa 2
- Programa recebe dois numeros faz a subtracao deles e retorna na tela.
### Tarefa 3
- Programa recebe dois numeros faz a multiplicacao deles e retorna na tela.
### Tarefa 4
- Programa recebe dois numeros faz a divisao e deles e retorna na tela.
### Tarefa 5
- Programa recebe dois numeros e valida divisao por zero.
### Tarefa 6
- Programa recebe dois numeros faz operacao e colore da forma: numeros impares devem estar coloridos azul.
### Tarefa 7
- Programa recebe dois numeros faz operacao e colore da forma: e os pares devem ser vermelhos.
## Passo 3: Iniciar as configs do projeto
Pergunta: O que o meu projeto vai precisar?
- Atualizar python.
- Instalar biblioteca bla
- Criar uma pasta do projeto.
- Criar os modules para codigo e outro pra test
- Criar nome_modulo/calculator.py
```
Class Calculator:
def calculate(self):
return true
```
- Criar test/integration/test_hello_word.py
```
from rhkjfdejkrfewh import Calculator
class TestCalculator(...):
def test_calculate(self):
assertEqual(Calculator().calculate(), true)
def test_bla(self):
assertEqual(bla.do_something(), 32)
```
- git init
- git commit -m "Initial Commit"
- git push origin master
## Passo 4.1: Implementar tarefa 1
- git checkout master
- git pull origin master
- git checkout -b add_sum
Comecar pelo integration
```
# min 2 integration, somando 2 + 2 outro 452432 + 233213
from calculator.calculator import Calculator
function test_*
num_1 = 50
num_2 = 40
Calculator.calculate(num_1, num_2)
asser.... 90
```
for varias_vezes in range(0, o_quanto_precisar):
- Implementar o que precisa
- git commit -m "Adiciona ..."
- git push origin add_sum
Criar PR (Pull Request) no github
## Passo 4.2: Implementar tarefa 2
...
## Passo 4.x: Implementar tarefa x
...