from datetime import date from decimal import Decimal from account.resource import AccountResource from account.schemas import AccountCreate, CategoryCreate from payee.models import PayeeCreate, Payee def inject_fixtures(session): for f in fixtures_payee: # f = prepare_dict(session, f) schema = PayeeCreate(**f) Payee.create(schema, session) def prepare_dict(session, entry): if entry['parent_path']: parent = AccountResource.get_by_path(session, entry['parent_path']) entry['parent_account_id'] = parent.id else: entry['parent_account_id'] = None del entry['parent_path'] return entry fixtures_payee = [ { "name": "PayeeEmployer", }, { "name": "PayeeSocialSecurity", }, { "name": "PayeeAssurance1", }, { "name": "PayeeAssurance2", }, { "name": "PayeeSupermarket1", }, { "name": "PayeeSupermarket2", }, { "name": "PayeeTaxes", }, { "name": "PayeeRent", }, ] fixtures_account = [ { "name": "Current Assets", "parent_path": None, "type": "Asset", "opening_date": date(1970, 1, 2), "opening_balance": Decimal("0.00"), }, { "name": "Cash in Wallet", "parent_path": "/Accounts/Asset/Current Assets/", "type": "Asset", "opening_date": date(1970, 1, 3), "opening_balance": Decimal("0.00"), }, { "name": "Checking Account", "parent_path": "/Accounts/Asset/Current Assets/", "type": "Asset", "opening_date": date(1970, 1, 4), "opening_balance": Decimal("0.00"), }, { "name": "Savings Account", "parent_path": "/Accounts/Asset/Current Assets/", "type": "Asset", "opening_date": date(1970, 1, 5), "opening_balance": Decimal("0.00"), }, { "name": "Debt Accounts", "parent_path": None, "type": "Liability", "opening_date": date(1970, 1, 6), "opening_balance": Decimal("0.00"), }, { "name": "Credit Card", "parent_path": "/Accounts/Liability/Debt Accounts/", "type": "Liability", "opening_date": date(1970, 1, 7), "opening_balance": Decimal("0.00"), }, ]