def test_update_unknown_fine(client, banker, player):
    response = client.put(f"/players/{player['user'].uuid}",
                          headers={'x-access-token': auth_for(banker)},
                          json={'fine_uuid': uuid.uuid4()})

    assert response.get_json()['message'] == 'fine_not_found'
    assert response.status_code == 404
Exemplo n.º 2
0
def test_delete_fine(client, conf_one_banker_one_team_many_fines):
    first_page = client.get('/fines',
                            headers={
                                'x-access-token':
                                auth_for(conf_one_banker_one_team_many_fines),
                            })
    fine_uuid = first_page.get_json()['fines'][-1]['uuid']

    response = client.delete(
        f'/fines/{fine_uuid}',
        headers={
            'x-access-token': auth_for(conf_one_banker_one_team_many_fines),
        },
    )

    assert response.status_code == 204
def test_update_player_unauthorized(client, player):
    response = client.put(f"/players/{player['user'].uuid}",
                          headers={'x-access-token': auth_for(player['user'])},
                          json={'fine_uuid': player['fine'].uuid})

    assert response.status_code == 403
    assert response.get_json()['message'] == 'player_unauthorized'
Exemplo n.º 4
0
def test_delete_unknown_fine(client, conf_one_banker_one_team_many_fines):
    first_page = client.get('/fines',
                            headers={
                                'x-access-token':
                                auth_for(conf_one_banker_one_team_many_fines),
                            })
    fine_uuid = str(uuid.uuid4())

    response = client.delete(
        f'/fines/{fine_uuid}',
        headers={
            'x-access-token': auth_for(conf_one_banker_one_team_many_fines),
        },
    )

    assert response.status_code == 404
    assert response.get_json()['message'] == 'fine_not_found'
def test_update_missing_parameter(client, banker, player):
    response = client.put(
        f"/players/{player['user'].uuid}",
        headers={'x-access-token': auth_for(banker)},
    )

    assert response.status_code == 422
    assert response.get_json()['message'] == 'missing_parameter'
Exemplo n.º 6
0
def test_get_fines_list_second_page(client,
                                    conf_one_player_one_team_many_fines):
    first_page = client.get('/fines',
                            headers={
                                'x-access-token':
                                auth_for(conf_one_player_one_team_many_fines)
                            })
    _lastUuid = first_page.get_json()['fines'][-1]['uuid']
    second_page = client.get(f'/fines?_currentPage=2&_lastUuid={_lastUuid}',
                             headers={
                                 'x-access-token':
                                 auth_for(conf_one_player_one_team_many_fines)
                             })
    fines_list = second_page.get_json()['fines']

    assert isinstance(fines_list, list)
    assert len(fines_list) <= MAX_PER_PAGE
    assert second_page.status_code == 200
Exemplo n.º 7
0
def test_delete_player_history(client, banker, test_player_with_fines):
    response = client.delete(
        f"/players/{test_player_with_fines[0].uuid}/fine",
        headers={
            'x-access-token': auth_for(banker)
        }
    )

    assert response.status_code == 204
def test_update_player(client, banker, player):
    response = client.put(f"/players/{player['user'].uuid}",
                          headers={'x-access-token': auth_for(banker)},
                          json={'fine_uuid': player['fine'].uuid})
    player_total = response.get_json()['total']

    assert isinstance(player_total, int)
    assert player_total == player['fine'].cost
    assert response.status_code == 200
def test_get_player_list_by_unknown_uuid(client, test_list_players):
    response = client.get(
        f'/players?_lastUuid={str(uuid.uuid4())}',
        headers={
            'x-access-token': auth_for(test_list_players[0])
        }
    )

    assert response.status_code == 404
    assert response.get_json()['message'] == 'player_not_found'
Exemplo n.º 10
0
def test_get_fines_list_filter_by_label(client,
                                        conf_one_player_one_team_many_fines):
    first_page = client.get('/fines',
                            headers={
                                'x-access-token':
                                auth_for(conf_one_player_one_team_many_fines)
                            })
    label = first_page.get_json()['fines'][-1]['label']
    response = client.get(f'/fines?_filter={label}',
                          headers={
                              'x-access-token':
                              auth_for(conf_one_player_one_team_many_fines)
                          })
    fine = response.get_json()['fines']

    assert isinstance(fine, list)
    assert len(fine) == 1
    assert fine[0]['label'] == label
    assert response.status_code == 200
Exemplo n.º 11
0
def test_get_player_history_unknown_player(client, banker):
    response = client.get(
        f"/players/{uuid.uuid4()}/fine",
        headers={
            'x-access-token': auth_for(banker)
        }
    )

    assert response.status_code == 404
    assert response.get_json()['message'] == 'player_not_found'
Exemplo n.º 12
0
def test_update_fine_missing_parameter(client,
                                       conf_one_banker_one_team_many_fines):
    first_page = client.get('/fines',
                            headers={
                                'x-access-token':
                                auth_for(conf_one_banker_one_team_many_fines),
                            })
    fine_uuid = first_page.get_json()['fines'][-1]['uuid']

    response = client.put(f'/fines/{fine_uuid}',
                          headers={
                              'x-access-token':
                              auth_for(conf_one_banker_one_team_many_fines),
                          },
                          json={
                              'label': 'new_label',
                          })

    assert response.status_code == 422
    assert response.get_json()['message'] == 'missing_parameter'
Exemplo n.º 13
0
def test_update_fine_unauthorized(client, conf_one_player_one_team_many_fines):
    first_page = client.get('/fines',
                            headers={
                                'x-access-token':
                                auth_for(conf_one_player_one_team_many_fines),
                            })
    fine_uuid = first_page.get_json()['fines'][-1]['uuid']

    response = client.put(f'/fines/{fine_uuid}',
                          headers={
                              'x-access-token':
                              auth_for(conf_one_player_one_team_many_fines),
                          },
                          json={
                              'label': 'new_label',
                              'cost': 5,
                          })

    assert response.status_code == 403
    assert response.get_json()['message'] == 'player_unauthorized'
Exemplo n.º 14
0
def test_get_fines_list_first_page(client,
                                   conf_one_player_one_team_many_fines):
    response = client.get('/fines',
                          headers={
                              'x-access-token':
                              auth_for(conf_one_player_one_team_many_fines)
                          })
    fines_list = response.get_json()['fines']

    assert isinstance(fines_list, list)
    assert len(fines_list) <= MAX_PER_PAGE
    assert response.status_code == 200
Exemplo n.º 15
0
def test_get_fines_list_per_page(client, conf_one_player_one_team_many_fines):
    _perPage = 10
    response = client.get(f'/fines?_perPage={_perPage}',
                          headers={
                              'x-access-token':
                              auth_for(conf_one_player_one_team_many_fines)
                          })
    fines_list = response.get_json()['fines']

    assert isinstance(fines_list, list)
    assert len(fines_list) == _perPage
    assert response.status_code == 200
Exemplo n.º 16
0
def test_get_player_empty_history(client, banker):
    response = client.get(
        f'/players/{banker.uuid}/fine',
        headers={
            'x-access-token': auth_for(banker)
        }
    )

    value = response.get_json()['fines']
    assert isinstance(value, dict)
    assert not value
    assert response.status_code == 200
Exemplo n.º 17
0
def test_create_fine_missing_parameters(client, banker):
    response = client.post(
        f'/fines',
        headers={
            'x-access-token': auth_for(banker)
        },
        json={
            'cost': 2,
        }
    )

    assert response.status_code == 422
    assert response.get_json()['message'] == 'missing_parameter'
Exemplo n.º 18
0
def test_get_player_list_first_page(client, test_list_players):
    response = client.get(
        '/players',
        headers={
            'x-access-token': auth_for(test_list_players[0])
        }
    )
    players_list = response.get_json()['players']

    assert isinstance(players_list, list)
    assert test_list_players[9].first_name not in players_list
    assert response.get_json()['full_count'] == len(test_list_players)
    assert response.status_code == 200
Exemplo n.º 19
0
def test_delete_player_history_unauthorized(
    client,
    test_player_with_fines
):
    response = client.delete(
        f"/players/{test_player_with_fines[0].uuid}/fine",
        headers={
            'x-access-token': auth_for(test_player_with_fines[0])
        }
    )

    assert response.status_code == 403
    assert response.get_json()['message'] == 'player_unauthorized'
Exemplo n.º 20
0
def test_create_fine_unauthorized(client, player):
    response = client.post(
        f'/fines',
        headers={
            'x-access-token': auth_for(player['user'])
        },
        json={
            'cost': 2,
            'label': 'dummy_fine',
        }
    )

    assert response.status_code == 403
    assert response.get_json()['message'] == 'player_unauthorized'
Exemplo n.º 21
0
def test_update_fine(client, conf_one_banker_one_team_many_fines):
    first_page = client.get('/fines',
                            headers={
                                'x-access-token':
                                auth_for(conf_one_banker_one_team_many_fines),
                            })
    fine_uuid = first_page.get_json()['fines'][-1]['uuid']
    fine_label = first_page.get_json()['fines'][-1]['label']
    fine_cost = first_page.get_json()['fines'][-1]['cost']

    response = client.put(f'/fines/{fine_uuid}',
                          headers={
                              'x-access-token':
                              auth_for(conf_one_banker_one_team_many_fines),
                          },
                          json={
                              'label': 'new_label',
                              'cost': 5,
                          })

    assert first_page.get_json()['fines'][-1]['label'] == fine_label
    assert first_page.get_json()['fines'][-1]['cost'] == fine_cost
    assert response.status_code == 204
Exemplo n.º 22
0
def test_get_player_history(client, banker, test_player_with_fines):
    response = client.get(
        f"/players/{test_player_with_fines[0].uuid}/fine",
        headers={
            'x-access-token': auth_for(banker)
        }
    )

    player_history = response.get_json()['fines']

    assert isinstance(player_history, dict)
    for player in test_player_with_fines[0].fines:
        assert player.fine.label in player_history.keys()
    assert response.status_code == 200
Exemplo n.º 23
0
def test_delete_fine_missing_token(
    client,
    conf_one_banker_one_team_many_fines,
):
    first_page = client.get('/fines',
                            headers={
                                'x-access-token':
                                auth_for(conf_one_banker_one_team_many_fines),
                            })
    fine_uuid = str(uuid.uuid4())

    response = client.delete(f'/fines/{fine_uuid}', )

    assert response.status_code == 401
    assert response.get_json()['message'] == 'token_missing'
Exemplo n.º 24
0
def test_create_fine(client, banker):
    response = client.post(
        f'/fines',
        headers={
            'x-access-token': auth_for(banker)
        },
        json={
            'cost': 2,
            'label': 'dummy_fine',
        }
    )

    assert response.status_code == 201
    assert response.get_json()['message'] == 'Fine added!'
    assert response.get_json()['status'] == 'success'
Exemplo n.º 25
0
def test_get_player_list_filter_by_unknown_name(
    client,
    test_list_players
):
    response = client.get(
        f'/players?_filter=JohnyJohn',
        headers={
            'x-access-token': auth_for(test_list_players[0])
        }
    )

    players_list = response.get_json()['players']

    assert isinstance(players_list, list)
    assert not players_list
    assert response.get_json()['full_count'] == len(test_list_players)
    assert response.status_code == 200
Exemplo n.º 26
0
def test_get_player_list_filter_by_last_name(
    client,
    test_list_players
):
    response = client.get(
        f'/players?_filter={test_list_players[0].last_name}',
        headers={
            'x-access-token': auth_for(test_list_players[0])
        }
    )

    players_list = response.get_json()['players']

    assert isinstance(players_list, list)
    assert players_list[0]['last_name'] == test_list_players[0].last_name
    assert response.get_json()['full_count'] == len(test_list_players)
    assert response.status_code == 200
Exemplo n.º 27
0
def test_update_fine_invalid_token(
    client,
    conf_one_banker_one_team_many_fines,
):
    first_page = client.get('/fines',
                            headers={
                                'x-access-token':
                                auth_for(conf_one_banker_one_team_many_fines),
                            })
    fine_uuid = str(uuid.uuid4())

    response = client.put(
        f'/fines/{fine_uuid}',
        headers={
            'x-access-token':
            auth_for_invalid_token(conf_one_banker_one_team_many_fines),
        },
        json={
            'label': 'new_label',
            'cost': 5
        })

    assert response.status_code == 401
    assert response.get_json()['message'] == 'token_invalid'