Esempio n. 1
0
    def test_conversions__not_needed(self):
        date = datetime.date(2012, 3, 2)
        conversion_entries = summarize.conversions(self.entries, self.ACCOUNT,
                                                   'NOTHING', date)
        self.assertEqualEntries(self.entries, conversion_entries)

        converted_balance = interpolate.compute_entries_balance(
            conversion_entries, date=date)
        self.assertTrue(converted_balance.cost().is_empty())
Esempio n. 2
0
    def test_conversions__no_date(self):
        conversion_entries = summarize.conversions(self.entries, self.ACCOUNT,
                                                   'NOTHING')
        self.assertIncludesEntries(self.entries, conversion_entries)
        self.assertIncludesEntries(
            """

        2012-05-01 C "Conversion for (-700.00 USD, 100.00 CAD, 60 NT {10 CAD})"
          Equity:Conversions   700.00 USD  @ 0 NOTHING
          Equity:Conversions  -700.00 CAD  @ 0 NOTHING

        """, conversion_entries)

        converted_balance = interpolate.compute_entries_balance(
            conversion_entries)
        self.assertTrue(converted_balance.cost().is_empty())
Esempio n. 3
0
    def test_conversions__with_transactions_at_cost(self):
        date = datetime.date(2012, 3, 10)
        conversion_entries = summarize.conversions(self.entries, self.ACCOUNT,
                                                   'XFER', date)
        self.assertIncludesEntries(self.entries, conversion_entries)
        self.assertIncludesEntries(
            """

        2012-03-09 C "Conversion for (-800.00 USD, 200.00 CAD, 60 NT {10 CAD})"
          Equity:Conversions   800.00 USD  @ 0 XFER
          Equity:Conversions  -800.00 CAD  @ 0 XFER

        """, conversion_entries)

        converted_balance = interpolate.compute_entries_balance(
            conversion_entries, date=date)
        self.assertTrue(converted_balance.cost().is_empty())
Esempio n. 4
0
    def test_conversions__needed_middle(self):
        date = datetime.date(2012, 3, 3)
        conversion_entries = summarize.conversions(self.entries, self.ACCOUNT,
                                                   'NOTHING', date)
        self.assertIncludesEntries(self.entries, conversion_entries)
        self.assertIncludesEntries(
            """

        2012-03-02 C "Conversion for (-800.00 USD, 800.00 CAD)"
          Equity:Conversions       800.00 USD @ 0 NOTHING
          Equity:Conversions      -800.00 CAD @ 0 NOTHING

        """, conversion_entries)

        converted_balance = interpolate.compute_entries_balance(
            conversion_entries, date=date)
        self.assertTrue(converted_balance.cost().is_empty())