def cache_test(self, do_quit=True): self.init_test('test_reconciler_caching') with FileTester.temp_input(self.teststmt) as tempfilename: recon = Reconciler(LedgerFile(tempfilename, 'cash')) self.responses = ['2030/03/30', '-30'] recon.do_statement('') if do_quit: recon.do_quit('') print('<<< test: restart >>>') with FileTester.temp_input(self.teststmt) as tempfilename: recon = Reconciler(LedgerFile(tempfilename, 'cash')) recon.do_mark('1 2') recon.do_finish('') if do_quit: recon.do_quit('') print('<<< test: restart >>>') with FileTester.temp_input(self.testfinish) as tempfilename: Reconciler(LedgerFile(tempfilename, 'cash')) self.conclude_test(strip_ansi_color=True)
def test_finish(self): self.init_test('test_reconcile_finish') with FileTester.temp_input(self.teststmt) as tempfilename: recon = Reconciler(LedgerFile(tempfilename, 'cash')) self.responses = ['2016/10/30', '-30'] recon.do_statement('') recon.do_mark('1 2') recon.do_finish('') self.conclude_test(strip_ansi_color=True)
def test_cancel_statement(self): self.init_test('test_cancel_statement_stuff') with FileTester.temp_input(self.teststmt) as tempfilename: recon = Reconciler(LedgerFile(tempfilename, 'cash')) self.responses = ['2016/10/27', '50'] recon.do_statement('') self.responses = ['cAnCeL'] recon.do_statement('') self.assertIsNone(recon.ending_balance) print('<<< test: restart >>>') with FileTester.temp_input(self.teststmt) as tempfilename: recon = Reconciler(LedgerFile(tempfilename, 'cash')) self.assertIsNone(recon.ending_balance) self.responses = ['2016/10/28', '40'] recon.do_statement('') self.responses = ['2016/10/28', 'cancel'] recon.do_statement('') self.assertIsNone(recon.ending_balance)
def test_setting_statement_date_and_balance(self): self.init_test('test_statement_stuff') with FileTester.temp_input(self.teststmt) as tempfilename: recon = Reconciler(LedgerFile(tempfilename, 'cash')) # errors and no change self.responses = ['blurg', '', 'abc', ''] recon.do_statement('') # new settings self.responses = ['2016/10/30', '40'] recon.do_statement('') # use $ symbol, no change self.responses = ['2016/10/30', '$40'] recon.do_statement('') self.conclude_test(strip_ansi_color=True)