Exemplo n.º 1
0
def test_get_list_of_finance_categories_api():
    user, token = create_user_and_token_for_tests()
    number_of_finance_categories = 4
    for i in range(number_of_finance_categories):
        finance_category_data = FinanceCategory(name=f"Test {i}")
        create_finance_category(finance_category_data)
    response = client.get(
        "/finance/categories/get-list",
        headers={"Authorization": f"Bearer {token}"},
    )
    assert response.status_code == status.HTTP_200_OK
    response_data = response.json()
    assert len(response_data) == number_of_finance_categories
Exemplo n.º 2
0
def create_finance_category_for_tests(
        order: Optional[int] = None) -> FinanceCategory:
    order = order or 0
    return create_finance_category(
        FinanceCategory(name=get_random_string_and_numbers(12),
                        order=order,
                        category_type=FinanceCategoryType.HOUSE))
Exemplo n.º 3
0
def test_delete_finance_category_api():
    user, token = create_user_and_token_for_tests()
    finance_category = create_finance_category(FinanceCategory(name="Test"))
    response = client.delete(
        "/finance/categories/delete",
        data=finance_category.json(),
        headers={"Authorization": f"Bearer {token}"},
    )
    assert response.status_code == status.HTTP_200_OK
Exemplo n.º 4
0
def test_get_finance_categories_list():
    number_of_finance_categories = 4
    for i in range(number_of_finance_categories):
        category = create_finance_category(FinanceCategory(name=f"Test {i}"))
        create_transaction_for_tests(amount=i + 1,
                                     category=category,
                                     transaction_type=TransactionType.REGULAR)
    finance_categories = get_finance_categories_list()
    assert len(finance_categories) == number_of_finance_categories
    assert finance_categories[0].amount is not None
Exemplo n.º 5
0
def test_update_finance_category_api():
    user, token = create_user_and_token_for_tests()
    finance_category = create_finance_category(FinanceCategory(name="Test"))
    new_data = FinanceCategory(**finance_category.dict())
    new_data.name = "Updated"
    response = client.put(
        "/finance/categories/update",
        data=new_data.json(),
        headers={"Authorization": f"Bearer {token}"},
    )
    assert response.status_code == status.HTTP_200_OK
    response_data = response.json()
    assert response_data["name"] == new_data.name
Exemplo n.º 6
0
def test_update_finance_category():
    finance_category_data = FinanceCategory(name="Test")
    finance_category = create_finance_category(finance_category_data)
    assert finance_category.id is not None
    assert finance_category.updated is not None

    updated_finance_category = FinanceCategory(**finance_category_data.dict())
    updated_finance_category.name = "New one"
    updated_finance_category = update_finance_category(
        updated_finance_category)

    assert updated_finance_category.id == finance_category.id
    assert updated_finance_category.name != finance_category.name
Exemplo n.º 7
0
def create_finance_category_api(data: FinanceCategory) -> FinanceCategory:
    return create_finance_category(data)
Exemplo n.º 8
0
def test_delete_finance_category():
    finance_category = create_finance_category(FinanceCategory(name="Test"))
    delete_finance_category(finance_category)
    assert len(get_finance_categories_list()) == 0
Exemplo n.º 9
0
def test_create_finance_category():
    finance_category_data = FinanceCategory(name="Test")
    finance_category = create_finance_category(finance_category_data)
    assert finance_category.id is not None
    assert finance_category.updated is not None