bootstrap
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
from uuid import uuid4
|
||||
|
||||
import pytest
|
||||
|
||||
from cashflow_model import (
|
||||
Account,
|
||||
Asset,
|
||||
FinancialModel,
|
||||
Liability,
|
||||
RecurringCashflow,
|
||||
Transaction,
|
||||
)
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def sample_model() -> FinancialModel:
|
||||
acc_id = uuid4()
|
||||
return FinancialModel(
|
||||
accounts=[
|
||||
Account(id=acc_id, name="Основной счёт", currency="USD", balance=5000.0),
|
||||
Account(name="Сбережения", currency="USD", balance=10000.0),
|
||||
],
|
||||
transactions=[
|
||||
Transaction(
|
||||
date="2026-01-01", account=str(acc_id),
|
||||
category="income", amount=3000.0,
|
||||
description="Зарплата",
|
||||
),
|
||||
Transaction(
|
||||
date="2026-01-05", account=str(acc_id),
|
||||
category="rent", amount=-1200.0,
|
||||
description="Аренда",
|
||||
),
|
||||
],
|
||||
recurring=[
|
||||
RecurringCashflow(
|
||||
start_date="2026-01-01", frequency="monthly",
|
||||
amount=500.0, category="income",
|
||||
),
|
||||
RecurringCashflow(
|
||||
start_date="2026-01-01", frequency="monthly",
|
||||
amount=-200.0, category="subscription",
|
||||
),
|
||||
],
|
||||
assets=[
|
||||
Asset(name="Акции", value=50000.0, growth_rate=8.0),
|
||||
],
|
||||
liabilities=[
|
||||
Liability(name="Кредит", balance=20000.0, interest=5.0, payment=500.0),
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def empty_model() -> FinancialModel:
|
||||
return FinancialModel()
|
||||
Reference in New Issue
Block a user