コード例 #1
0
def test_finalizar_uma_tarefa_com_sucesso_deve_receber_codigo_200(client):
    id = '44bc2282-8735-4514-afb7-3f303b90d6bf'
    tarefa = {'id': id, 'titulo': 'titulo', 'descricao': 'descricao'}
    TAREFAS.append(tarefa)
    resposta = client.patch(f'/tarefas/{id}', json={'estado': 'finalizado'})
    assert resposta.status_code == status.HTTP_200_OK
    TAREFAS.clear()
コード例 #2
0
def test_quando_deletar_deve_retorna_status_code_204(client):
    id = '44bc2282-8735-4514-afb7-3f303b90d6bf'
    tarefa = {'id': id, 'titulo': 'titulo', 'descricao': 'descricao'}
    TAREFAS.append(tarefa)
    resposta = client.delete(f'/tarefas/{id}')
    assert resposta.status_code == status.HTTP_204_NO_CONTENT
    TAREFAS.clear()
コード例 #3
0
def test_detalhar_uma_tarefa_deve_retornar_codigo_200_se_existir_uma_tarefa_valida(
        client):
    id = '44bc2282-8735-4514-afb7-3f303b90d6bf'
    tarefa = {'id': UUID(id), 'titulo': 'titulo', 'descricao': 'descricao'}
    TAREFAS.append(tarefa)
    resposta = client.get(f'/tarefas/{id}')
    assert resposta.status_code == status.HTTP_200_OK
    TAREFAS.clear()
コード例 #4
0
def test_finalizar_uma_tarefa_deve_modificar_a_lista_de_tarefas(client):
    id = '44bc2282-8735-4514-afb7-3f303b90d6bf'
    tarefa = {'id': id, 'titulo': 'titulo', 'descricao': 'descricao'}
    TAREFAS.append(tarefa)
    resposta = client.patch(f'/tarefas/{id}', json={'estado': 'finalizado'})
    tarefa_esperada = dict(tarefa)
    tarefa_esperada.update({'estado': 'finalizado'})
    assert tarefa_esperada in TAREFAS
    TAREFAS.clear()
コード例 #5
0
def test_finalizar_uma_tarefa_deve_retornar_tarefa_modificada(client):
    id = '44bc2282-8735-4514-afb7-3f303b90d6bf'
    tarefa = {'id': id, 'titulo': 'titulo', 'descricao': 'descricao'}
    TAREFAS.append(tarefa)
    resposta = client.patch(f'/tarefas/{id}', json={'estado': 'finalizado'})
    tarefa_esperada = tarefa
    tarefa_esperada.update({'estado': 'finalizado'})
    assert resposta.json() == tarefa_esperada
    TAREFAS.clear()
コード例 #6
0
def test_apagar_quando_não_houver_tarefa_com_o_código_retorna_status_code_404(
        client):
    id = '44bc2282-8735-4514-afb7-3f303b90d6bf'
    tarefa = {'id': id, 'titulo': 'titulo', 'descricao': 'descricao'}
    TAREFAS.append(tarefa)
    id_apagar = '12bc2282-8735-4514-afb7-3f303b90d6bf'
    resposta = client.delete(f'/tarefas/{id_apagar}')
    assert resposta.status_code == status.HTTP_404_NOT_FOUND
    TAREFAS.clear()
コード例 #7
0
def test_deve_listar_tarefas():
    tarefa = {
        "id": 1,
        "titulo": "titulo",
        "descricao": "descricao",
        "estado": "finalizado",
    }
    TAREFAS.append(tarefa)
    cliente = TestClient(app)
    resposta = cliente.get("/tarefas")
    assert resposta.json() == [tarefa]
    TAREFAS.clear()
コード例 #8
0
def test_detalhar_uma_tarefa_deve_retornar_uma_tarefa(client):
    id = '44bc2282-8735-4514-afb7-3f303b90d6bf'
    tarefa_base = {
        'titulo': 'titulo',
        'descricao': 'descricao',
        'estado': 'não finalizado'
    }
    tarefa_persistida = {'id': UUID(id), **tarefa_base}
    tarefa_esperada = {'id': id, **tarefa_base}
    TAREFAS.append(tarefa_persistida)
    resposta = client.get(f'/tarefas/{id}')
    assert resposta.json() == tarefa_esperada
    TAREFAS.clear()
コード例 #9
0
def test_listagem_deve_ser_ordenada_por_estado(client):
    tarefa1 = {
        'titulo': 'titulo1',
        'descricao': 'descricao1',
        'estado': 'não finalizado'
    }
    tarefa2 = {
        'titulo': 'titulo2',
        'descricao': 'descricao2',
        'estado': 'finalizado'
    }
    tarefa3 = {
        'titulo': 'titulo3',
        'descricao': 'descricao3',
        'estado': 'não finalizado'
    }
    tarefa4 = {
        'titulo': 'titulo4',
        'descricao': 'descricao4',
        'estado': 'finalizado'
    }

    TAREFAS.append(tarefa1)
    TAREFAS.append(tarefa2)
    TAREFAS.append(tarefa3)
    TAREFAS.append(tarefa4)
    resposta = client.get('/tarefas')
    assert resposta.json() == [tarefa2, tarefa4, tarefa1, tarefa3]
    TAREFAS.clear()
コード例 #10
0
def test_quando_listar_tarefas_a_tarefa_retornada_deve_possuir_um_estado():
    TAREFAS.append({"estado": "finalizado"})
    cliente = TestClient(app)
    resposta = cliente.get("/tarefas")
    assert "estado" in resposta.json().pop()
    TAREFAS.clear()
コード例 #11
0
def test_quando_listar_tarefas_a_tarefa_retornada_deve_possuir_descricao():
    TAREFAS.append({"descricao": "descricao 1"})
    cliente = TestClient(app)
    resposta = cliente.get("/tarefas")
    assert "descricao" in resposta.json().pop()
    TAREFAS.clear()
コード例 #12
0
def test_quando_listar_tarefas_a_tarefa_retornada_deve_possuir_estado(client):
    TAREFAS.append({'estado': 'finalizado'})
    resposta = client.get('/tarefas')
    assert 'estado' in resposta.json().pop()
    TAREFAS.clear()
コード例 #13
0
def test_quando_listar_tarefas_a_tarefa_retornada_deve_possuir_descricao(
        client):
    TAREFAS.append({'descricao': 'descricao 1'})
    resposta = client.get('/tarefas')
    assert 'descricao' in resposta.json().pop()
コード例 #14
0
def test_quando_listar_tarefas_a_tarefa_retornada_deve_possuir_id(client):
    TAREFAS.append({'id': 1})
    resposta = client.get('/tarefas')
    assert 'id' in resposta.json().pop()