def test_create_stock_accounts_incomeaccounts(self, book_basic): broker = book_basic.accounts(name="broker") income = book_basic.accounts(name="inc") appl = Commodity(namespace="NMS", mnemonic="AAPL", fullname="Apple") appl["quoted_currency"] = "USD" acc, inc_accounts = factories.create_stock_accounts( appl, broker_account=broker, income_account=income, income_account_types="D" ) assert len(inc_accounts) == 1 acc, inc_accounts = factories.create_stock_accounts( appl, broker_account=broker, income_account=income, income_account_types="CL" ) assert len(inc_accounts) == 1 acc, inc_accounts = factories.create_stock_accounts( appl, broker_account=broker, income_account=income, income_account_types="CS" ) assert len(inc_accounts) == 1 acc, inc_accounts = factories.create_stock_accounts( appl, broker_account=broker, income_account=income, income_account_types="I" ) assert len(inc_accounts) == 1 acc, inc_accounts = factories.create_stock_accounts( appl, broker_account=broker, income_account=income, income_account_types="D/CL/CS/I" ) assert len(income.children) == 4 book_basic.flush() assert sorted(income.children, key=lambda x: x.guid) == sorted( [_acc.parent for _acc in inc_accounts], key=lambda x: x.guid ) assert broker.children == [acc]
def test_create_stock_accounts_incomeaccounts(self, book_basic): broker = book_basic.accounts(name="broker") income = book_basic.accounts(name="inc") appl = Commodity(namespace="NMS", mnemonic="AAPL", fullname="Apple") appl["quoted_currency"] = "USD" acc, inc_accounts = factories.create_stock_accounts(appl, broker_account=broker, income_account=income, income_account_types="D") assert len(inc_accounts) == 1 acc, inc_accounts = factories.create_stock_accounts(appl, broker_account=broker, income_account=income, income_account_types="CL") assert len(inc_accounts) == 1 acc, inc_accounts = factories.create_stock_accounts(appl, broker_account=broker, income_account=income, income_account_types="CS") assert len(inc_accounts) == 1 acc, inc_accounts = factories.create_stock_accounts(appl, broker_account=broker, income_account=income, income_account_types="I") assert len(inc_accounts) == 1 acc, inc_accounts = factories.create_stock_accounts(appl, broker_account=broker, income_account=income, income_account_types="D/CL/CS/I") assert len(income.children) == 4 assert sorted(income.children, key=lambda x: x.guid) == sorted([_acc.parent for _acc in inc_accounts], key=lambda x: x.guid) assert broker.children == [acc]
def test_create_stock_accounts_simple(self, book_basic): with pytest.raises(GnucashException): factories.create_stock_accounts( book_basic.default_currency, broker_account=book_basic.accounts(name="broker") ) broker = book_basic.accounts(name="broker") appl = Commodity(namespace="NMS", mnemonic="AAPL", fullname="Apple") acc, inc_accounts = factories.create_stock_accounts(appl, broker_account=broker) assert inc_accounts == [] assert broker.children == [acc]
def test_create_stock_accounts_simple(self, book_basic): with pytest.raises(GnucashException): factories.create_stock_accounts(book_basic.default_currency, broker_account=book_basic.accounts(name="broker")) broker = book_basic.accounts(name="broker") appl = Commodity(namespace="NMS", mnemonic="AAPL", fullname="Apple") acc, inc_accounts = factories.create_stock_accounts(appl, broker_account=broker) assert inc_accounts == [] assert broker.children == [acc]