Пример #1
0
    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]
Пример #2
0
    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]
Пример #3
0
    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]
Пример #4
0
    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]