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())
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())
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())
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())