def setUp(self): """Create initial Headers, Accounts, an Entry & Transactions.""" self.liability_header = create_header('liability', cat_type=2) self.trip_advances = create_account( "Trip Advances", self.liability_header, 0) self.store_account = create_account( "Local Store Credit Account", self.liability_header, 0) self.store = StoreAccount.objects.create( name='Local Store', account=self.store_account) self.expense_header = create_header("expenses", None, 6) self.expense_account = create_account( "expense", self.expense_header, 0, 6) entry_date = datetime.date(2015, 6, 11) self.entry = TripEntry.objects.create( date=entry_date, name='Testeroni', number='42', total_trip_advance=100, amount=50) self.trans1 = TripTransaction.objects.create( trip_entry=self.entry, account=self.expense_account, amount=25) self.trans2 = TripTransaction.objects.create( trip_entry=self.entry, account=self.expense_account, amount=25) self.store_trans = TripStoreTransaction.objects.create( trip_entry=self.entry, store=self.store, account=self.expense_account, amount=25 )
def setUp(self): """Create an Asset and Liability account.""" asset_header = create_header('Asset Header', cat_type=1) self.asset_account = create_account('Asset Account', asset_header, 0) liability_header = create_header('Liability Header') self.liability_account = create_account('Liability Account', liability_header, 0)
def test_get_profit_loss_header_totals_flipped(self): """ The totals for Expenses, Cost of Goods Sold and Other Expenses should display the value total, not the credit/debit total. """ child_header = create_header("Child Expense", self.expense_header, 6) gchild_account = create_account("GrandChild Expense", child_header, 0, 6) gchild_header = create_header("Grandchild Expense", child_header, 6) ggchild_account = create_account("Great Grandchild Expense", gchild_header, 0, 6) entry = create_entry(datetime.date.today(), "test entry") create_transaction(entry, self.expense_account, 25) create_transaction(entry, gchild_account, 47) create_transaction(entry, ggchild_account, 82) start_date = datetime.date(1, 1, 1) stop_date = datetime.date.today() root_header = _get_profit_loss_header_totals(6, start_date, stop_date) child_header_result = root_header.descendants[0] gchild_header_result = child_header_result.descendants[0] self.assertEqual(root_header.total, -154) self.assertSequenceEqual(root_header.descendants, [child_header]) self.assertEqual(child_header_result.total, -129) self.assertSequenceEqual(child_header_result.descendants, [gchild_header]) self.assertEqual(gchild_header_result.total, -82)
def setUp(self): """Create an initial Account, CreditCard & some CreditCardEntries.""" create_and_login_user(self) self.liability_header = create_header('liability', cat_type=2) self.cc_account = create_account( "Credit Card", self.liability_header, 0) self.creditcard = CreditCard.objects.create(account=self.cc_account) self.expense_header = create_header("expenses", None, 6) self.expense_account = create_account( "expense", self.expense_header, 0, 6) entry_date = datetime.date(2015, 6, 11) self.entry = CreditCardEntry.objects.create( date=entry_date, card=self.creditcard, name='test anarch', merchant='test merch', amount=20, ) self.transaction = CreditCardTransaction.objects.create( creditcard_entry=self.entry, account=self.expense_account, amount=20, ) self.older_entry = CreditCardEntry.objects.create( date=entry_date - datetime.timedelta(days=1), card=self.creditcard, name='test anarch', merchant='test merch', amount=20) self.older_transaction = CreditCardTransaction.objects.create( creditcard_entry=self.older_entry, account=self.expense_account, amount=20)
def test_get_profit_loss_header_totals(self): """ The function should return a root Header with the descendants and total attributes. """ child_header = create_header("Child Income", self.income_header, 4) gchild_account = create_account("GrandChild Income", child_header, 0, 4) gchild_header = create_header("Grandchild Income", child_header, 4) ggchild_account = create_account("Great Grandchild Income", gchild_header, 0, 4) entry = create_entry(datetime.date.today(), "test entry") create_transaction(entry, self.income_account, 25) create_transaction(entry, gchild_account, 47) create_transaction(entry, ggchild_account, 82) start_date = datetime.date(1, 1, 1) stop_date = datetime.date.today() root_header = _get_profit_loss_header_totals(4, start_date, stop_date) child_header_result = root_header.descendants[0] gchild_header_result = child_header_result.descendants[0] self.assertEqual(root_header.total, 154) self.assertSequenceEqual(root_header.descendants, [child_header]) self.assertEqual(child_header_result.total, 129) self.assertSequenceEqual(child_header_result.descendants, [gchild_header]) self.assertEqual(gchild_header_result.total, 82)
def setUp(self): """Create an initial Account & CreditCard.""" self.liability_header = create_header('liability', cat_type=2) self.cc_account = create_account( "Credit Card", self.liability_header, 0) self.creditcard = CreditCard.objects.create(account=self.cc_account) self.expense_header = create_header("expenses", None, 6) self.expense_account = create_account( "expense", self.expense_header, 0, 6)
def test_get_profit_loss_header_totals_max_child_depth(self): """ The function should only nest up to the grandchildren of the root header. """ child_header = create_header("Child Income", self.income_header, 4) gchild_header = create_header("Grandchild Income", child_header, 4) create_header("Great Grandchild Income", gchild_header, 4) start_date = datetime.date(1, 1, 1) stop_date = datetime.date.today() root_header = _get_profit_loss_header_totals(4, start_date, stop_date) max_depth_header = root_header.descendants[0].descendants[0] self.assertFalse(hasattr(max_depth_header, 'descendants'))
def test_get_importer_returns_imported_class(self): """Test that `get_importer_class` returns the correct class.""" header = create_header('Assets') account = create_account('Account', header, 0, 0, True) bank_account = BankAccount.objects.create( account=account, bank=BankAccount.VCB_CSV_IMPORTER) self.assertEqual(bank_account.get_importer_class(), CSVImporter)
def setUp(self): """Create Headers, Accounts and an Event.""" self.liability_header = create_header("Liability Account") self.liability_account = create_account("Liability Account", self.liability_header, 0) self.event = Event.objects.create( name="test", abbreviation="T", date=datetime.date.today(), city="Louisa", state="MD" )
def setUp(self): """Create Banks and Income/Expense Accounts.""" create_and_login_user(self) self.asset_header = create_header('asset', cat_type=1) self.expense_header = create_header('expense', cat_type=6) self.income_header = create_header('income', cat_type=4) self.asset_account = create_account( 'asset', self.asset_header, 0, 1, True) self.other_asset = create_account( 'other asset', self.asset_header, 0, 1, True) self.expense_account = create_account( 'expense', self.expense_header, 0, 6) self.income_account = create_account( 'income', self.income_header, 0, 4) self.bank_account = BankAccount.objects.create( account=self.asset_account, bank=BankAccount.VCB_CSV_IMPORTER)
def setUp(self): """ Events are tied to Transactions which require an Account. """ self.asset_header = create_header("asset", cat_type=1) self.bank_account = create_account("bank", self.asset_header, 0, 1, True) self.event = Event.objects.create( name="test event", city="mineral", state="VA", date=datetime.date.today(), abbreviation="TE" )
def setUp(self): """Create a CreditCardEntry to show.""" self.liability_header = create_header('liability', cat_type=2) self.cc_account = create_account( "Credit Card", self.liability_header, 0) self.creditcard = CreditCard.objects.create(account=self.cc_account) self.expense_header = create_header("expenses", None, 6) self.expense_account = create_account( "expense", self.expense_header, 0, 6) entry_date = datetime.date.today() self.entry = CreditCardEntry.objects.create( date=entry_date, card=self.creditcard, name='test anarch', merchant='test merch', amount=20, ) self.transaction = CreditCardTransaction.objects.create( creditcard_entry=self.entry, account=self.expense_account, amount=20, )
def setUp(self): """Create Headers, Accounts and an Event.""" self.liability_header = create_header('Liability Account') self.liability_account = create_account('Liability Account', self.liability_header, 0) self.event = Event.objects.create(name="test", abbreviation="T", date=datetime.date.today(), city="Louisa", state="MD")
def setUp(self): """ The report requires Income, Cost of Sales, Expense, Other Income and Other Expense Headers and Accounts. """ self.income_header = create_header('Income Header', cat_type=4) self.income_account = create_account('Income Account', self.income_header, 0, 4) self.cos_header = create_header('Cost of Sales Header', cat_type=5) self.cos_account = create_account('Cost of Sales Account', self.cos_header, 0, 5) self.expense_header = create_header('Expense Header', cat_type=6) self.expense_account = create_account('Expense Account', self.expense_header, 0, 6) self.oincome_header = create_header('Other Income Header', cat_type=7) self.oincome_account = create_account('Other Income Account', self.oincome_header, 0, 7) self.oexpense_header = create_header('Other Expense Header', cat_type=8) self.oexpense_account = create_account('Other Expense Account', self.oexpense_header, 0, 8)
def setUp(self): """ Events are tied to Transactions which require an Account. """ self.asset_header = create_header('asset', cat_type=1) self.bank_account = create_account('bank', self.asset_header, 0, 1, True) self.event = Event.objects.create(name='test event', city='mineral', state='VA', date=datetime.date.today(), abbreviation="TE")
def setUp(self): """Add some accounts and an exisiting BankReceivingEntry.""" self.header = create_header('Initial') self.bank_account = create_account( 'B Account', self.header, 0, 0, True) self.income_account = create_account( 'I Account', self.header, 0, 4, False) self.day = datetime.date(2014, 4, 20) self.main_transaction = Transaction.objects.create( account=self.bank_account, balance_delta=50) self.entry = BankReceivingEntry.objects.create( main_transaction=self.main_transaction, date=self.day, memo="test", payor="payor") Transaction.objects.create( bankreceive_entry=self.entry, account=self.income_account, balance_delta=-50, detail="")
def setUp(self): """Create some events and transactions.""" liability_header = create_header('Liability Account') liability_account = create_account('Liability Account', liability_header, 0) self.event1 = Event.objects.create(name="test", abbreviation="TBMD", date=datetime.date.today(), city="Baltimore", state="MD") self.event2 = Event.objects.create(name="test", abbreviation="TRVA", date=datetime.date.today(), city="Richmond", state="VA") entry = create_entry(datetime.date.today(), 'test memo') Transaction.objects.create(journal_entry=entry, account=liability_account, balance_delta=25, event=self.event1) Transaction.objects.create(journal_entry=entry, account=liability_account, balance_delta=-15, event=self.event2)
def setUp(self): """Add some accounts and an exisiting BankSpendingEntry.""" self.header = create_header('Assets') self.bank_account = create_account( 'B Account', self.header, 0, 0, True) self.wrapper_account = BankAccount.objects.create( account=self.bank_account, bank='bank_import.importers.vcb.CSVImporter') self.expense_account = create_account( 'E Account', self.header, 0, 6, False) self.day = datetime.date(2014, 4, 20) self.main_transaction = Transaction.objects.create( account=self.bank_account, balance_delta=-50) self.entry = BankSpendingEntry.objects.create( main_transaction=self.main_transaction, date=self.day, memo="test", payee="payee", ach_payment=True) Transaction.objects.create( bankspend_entry=self.entry, account=self.expense_account, balance_delta=50, detail="")
def setUp(self): """Create an Account and an Entry of each type.""" self.header = create_header('Assets') self.account = create_account('Account', self.header, 0, 0, True) self.bank_account = BankAccount.objects.create(account=self.account) self.day = datetime.date(2014, 4, 20) self.deposit_transfer = Transaction.objects.create( account=self.account, balance_delta=-30, date=self.day) self.withdrawal_transfer = Transaction.objects.create( account=self.account, balance_delta=30, date=self.day) self.deposit_transaction = Transaction.objects.create( account=self.account, balance_delta=-20) self.deposit = BankReceivingEntry.objects.create( main_transaction=self.deposit_transaction, memo='deposit memo', payor='payor', date=self.day) self.withdrawal_transaction = Transaction.objects.create( account=self.account, balance_delta=20) self.withdrawal = BankSpendingEntry.objects.create( main_transaction=self.withdrawal_transaction, date=self.day, memo='withdrawal memo', payee='payee', ach_payment=True)
def setUp(self): """Create a bank account.""" self.header = create_header('Assets') self.account = create_account('Account', self.header, 0, 0, True) self.day = datetime.date(2014, 4, 20)
def setUp(self): """Create an Entry for the Receipt.""" self.header = create_header("Expense Header", None, 6) self.account = create_account("Darmok's Stipend", self.header, 0, 6) self.entry = create_entry(datetime.date.today(), 'Unique New York')
def setUp(self): """Create an initial Account.""" self.header = create_header("Credit Cards", None, 2) self.account = create_account("Darmok's CC", self.header, 0, 2)