From 5dc5de017f0f283d75917c5f98615e9189f1e74e Mon Sep 17 00:00:00 2001 From: gfcapalbo Date: Fri, 29 Apr 2016 10:42:30 +0200 Subject: [PATCH] tests --- account_tax_balance/tests/__init__.py | 3 + .../tests/test_account_tax_balance.py | 72 +++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 account_tax_balance/tests/__init__.py create mode 100644 account_tax_balance/tests/test_account_tax_balance.py diff --git a/account_tax_balance/tests/__init__.py b/account_tax_balance/tests/__init__.py new file mode 100644 index 00000000..7094e61d --- /dev/null +++ b/account_tax_balance/tests/__init__.py @@ -0,0 +1,3 @@ +#Accounting tests extending AccountingTestCase + +from . import test_account_tax_balance diff --git a/account_tax_balance/tests/test_account_tax_balance.py b/account_tax_balance/tests/test_account_tax_balance.py new file mode 100644 index 00000000..9c7cd74a --- /dev/null +++ b/account_tax_balance/tests/test_account_tax_balance.py @@ -0,0 +1,72 @@ +#from openerp.addons.account.tests.account_test_users import AccountTestUsers +from openerp.tests.common import TransactionCase +from openerp.tools import float_compare + + +class TestAccountTaxBalance(TransactionCase): + + def setUp(self): + super(TestAccountTaxBalance, self).setUp() + self.fixed_tax = self.tax_model.create({ + 'name': "Fixed tax", + 'amount_type': 'fixed', + 'amount': 10.0, + 'sequence': 1, + }) + self.fixed_tax_bis = self.tax_model.create({ + 'name': "Fixed tax bis", + 'amount_type': 'fixed', + 'amount': 15, + 'sequence': 2, + }) + self.percent_tax = self.tax_model.create({ + 'name': "Percent tax", + 'amount_type': 'percent', + 'amount': 10.0, + 'sequence': 3, + }) + self.bank_journal = self.env['account.journal'].search([('type', '=', 'bank'), ('company_id', '=', self.account_manager.company_id.id)])[0] + self.bank_account = self.bank_journal.default_debit_account_id + self.expense_account = self.env['account.account'].search([('user_type_id.type', '=', 'payable')], limit=1) #Should be done by onchange later + + + def test_tax_balance(self): + company_id = self.env['res.users'].browse(self.env.uid).company_id.id + tax = self.env['account.tax'].create({ + 'name': 'Tax 10.0', + 'amount': 10.0, + 'amount_type': 'fixed', + }) + analytic_account = self.env['account.analytic.account'].create({ + 'name': 'test account', + }) + invoice_account = self.env['account.account'].search([('user_type_id', '=', self.env.ref('account.data_account_type_receivable').id)], limit=1).id + invoice_line_account = self.env['account.account'].search([('user_type_id', '=', self.env.ref('account.data_account_type_expenses').id)], limit=1).id + invoice = self.env['account.invoice'].create({ + 'partner_id': self.env.ref('base.res_partner_2').id, + 'account_id': invoice_account, + 'type': 'in_invoice', + }) + + self.env['account.invoice.line'].create({ + 'product_id': self.env.ref('product.product_product_4').id, + 'quantity': 1.0, + 'price_unit': 100.0, + 'invoice_id': invoice.id, + 'name': 'product that cost 100', + 'account_id': invoice_line_account, + 'invoice_line_tax_ids': [(6, 0, [tax.id])], + 'account_analytic_id': analytic_account.id, + }) + + # : check that Initially supplier bill state is "Draft" + self.assertTrue((invoice.state == 'draft'), "Initially vendor bill state is Draft") + + #change the state of invoice to open by clicking Validate button + invoice.signal_workflow('invoice_open') + + self.assertEquals(tax.base_balance, 100) + self.assertEquals(tax.balance, 10) + + +