示例#1
0
def test_no_password_in_payload(client):
    response, data = post(
        client, {"username": "******", "email": "*****@*****.**"}
    )

    assert response.status_code == 400
    helpers.assert_data(data, "fail", "Invalid payload")
示例#2
0
def test_no_email_in_payload(client):
    response, data = post(
        client, {"username": "******", "password": "******"}
    )

    assert response.status_code == 400
    helpers.assert_data(data, "fail", "Invalid payload")
示例#3
0
def test_valid_logout(client):
    token = helpers.log_user_in_and_get_token(client)

    response, data = get(client, {"Authorization": f"Bearer {token}"})

    helpers.assert_json_response(response, 200)
    helpers.assert_data(data, "success", "Successfully logged out")
示例#4
0
def test_expired_token(client):
    current_app.config["TOKEN_EXPIRATION_SECONDS"] = -1
    token = helpers.log_user_in_and_get_token(client)

    response, data = get(client, {"Authorization": f"Bearer {token}"})

    helpers.assert_json_response(response, 401)
    helpers.assert_data(data, "fail", "Signature expired")
示例#5
0
def test_no_password(client):
    response, data = post(client, {
        "username": "******",
        "email": "*****@*****.**"
    })

    helpers.assert_json_response(response, 400)
    helpers.assert_data(data, "fail", "Invalid payload")
示例#6
0
def test_not_registered_user_logs_in(client):
    response, data = post(client, {
        "email": "*****@*****.**",
        "password": "******"
    })

    helpers.assert_json_response(response, 404)
    helpers.assert_data(data, "fail", "User doesn't exist")
示例#7
0
def test_registered_user_logs_in(client):
    helpers.add_user(username="******",
                     email="*****@*****.**",
                     password="******")
    response, data = post(client, {
        "email": "*****@*****.**",
        "password": "******"
    })

    helpers.assert_json_response(response, 200)
    helpers.assert_data(data, "success", "Successfully logged in")
示例#8
0
def test_registered_user_logs_in_wrong_password(client):
    helpers.add_user(username="******",
                     email="*****@*****.**",
                     password="******")
    response, data = post(client, {
        "email": "*****@*****.**",
        "password": "******"
    })

    helpers.assert_json_response(response, 400)
    helpers.assert_data(data, "fail", "Check password")
示例#9
0
def test_everything_ok(client):
    response, data = post(
        client,
        {
            "username": "******",
            "email": "*****@*****.**",
            "password": "******",
        },
    )

    helpers.assert_json_response(response, 201)
    helpers.assert_data(data, "success", "[email protected] was added!")
示例#10
0
def test_all_is_good(client):
    response, data = post(
        client,
        {
            "username": "******",
            "email": "*****@*****.**",
            "password": "******",
        },
    )

    helpers.assert_json_response(response, 201)
    helpers.assert_data(data, "success", "Successfully registered")
    assert data["auth_token"]
示例#11
0
def test_valid(client):
    username, email, password = "******", "*****@*****.**", "password12345"
    token = helpers.log_user_in_and_get_token(client, username, email,
                                              password)

    response, data = get(client, {"Authorization": f"Bearer {token}"})

    helpers.assert_json_response(response, 200)
    helpers.assert_data(data, "success", "Success")
    inner_data = data["data"]
    assert inner_data is not None
    assert inner_data["username"] == username
    assert inner_data["email"] == email
    assert inner_data["active"] is True
示例#12
0
def test_username_already_exists(client):
    helpers.add_user(
        username="******", email="*****@*****.**", password="******"
    )
    response, data = post(
        client,
        {
            "username": "******",
            "email": "*****@*****.**",
            "password": "******",
        },
    )

    assert response.status_code == 400
    helpers.assert_data(data, "fail", "User already exists")
示例#13
0
def test_email_already_exists(client):
    helpers.add_user(
        username="******", email="*****@*****.**", password="******"
    )
    response, data = post(
        client,
        {
            "username": "******",
            "email": "*****@*****.**",
            "password": "******",
        },
    )

    assert response.status_code == 400
    helpers.assert_data(data, "fail", "User already exists")
示例#14
0
def test_email_twice(client):
    post(
        client,
        {
            "username": "******",
            "email": "*****@*****.**",
            "password": "******"
        },
    )
    response, data = post(
        client,
        {
            "username": "******",
            "email": "*****@*****.**",
            "password": "******"
        },
    )

    helpers.assert_json_response(response, 400)
    helpers.assert_data(data, "fail", "Email already exists.")
示例#15
0
def test_invalid(client):
    response, data = get(client, {"Authorization": "Bearer invalid"})

    helpers.assert_json_response(response, 401)
    helpers.assert_data(data, "fail", "Invalid token")
示例#16
0
def test_unknown_id(client):
    response = client.get("/users/999999")
    data = json.loads(response.data.decode())

    helpers.assert_json_response(response, 404)
    helpers.assert_data(data, "fail", "User does not exist.")
示例#17
0
def test_missing_header(client):
    response, data = get(client, None)

    helpers.assert_json_response(response, 403)
    helpers.assert_data(data, "fail", "Missing header")
示例#18
0
def test_no_email(client):
    response, data = post(client, {"username": "******", "password": "******"})

    helpers.assert_json_response(response, 400)
    helpers.assert_data(data, "fail", "Invalid payload")
示例#19
0
def test_no_username(client):
    response, data = post(client, {"email": "*****@*****.**", "password": "******"})

    helpers.assert_json_response(response, 400)
    helpers.assert_data(data, "fail", "Invalid payload")
示例#20
0
def test_empty_payload(client):
    response, data = post(client, {})

    helpers.assert_json_response(response, 400)
    helpers.assert_data(data, "fail", "Invalid payload")
示例#21
0
def test_empty_payload(client):
    response, data = post(client, {})

    assert response.status_code == 400
    helpers.assert_data(data, "fail", "Invalid payload")