mirror of
https://github.com/OCA/account-reconcile.git
synced 2025-01-20 12:27:39 +02:00
71 lines
2.8 KiB
Python
71 lines
2.8 KiB
Python
# Copyright 2011-2019 Camptocamp SA
|
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html)
|
|
|
|
from odoo.tests.common import SavepointCase
|
|
|
|
|
|
class TestCompliteSO(SavepointCase):
|
|
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
super().setUpClass()
|
|
cls.env = cls.env(context=dict(cls.env.context, tracking_disable=True))
|
|
|
|
cls.partner = cls.env.ref('base.res_partner_1')
|
|
p = cls.env.ref('product.product_product_6')
|
|
cls.order = cls.env['sale.order'].create({
|
|
'name': 'Test order',
|
|
'partner_id': cls.partner.id,
|
|
'order_line': [(0, 0, {'name': 'Test autocomplet',
|
|
'product_id': p.id,
|
|
'product_uom_qty': 2,
|
|
'qty_to_invoice': 2,
|
|
'qty_delivered': 2,
|
|
'product_uom': p.uom_id.id,
|
|
'price_unit': p.list_price})],
|
|
})
|
|
rule_ids = cls.env.ref('account_move_base_import.'
|
|
'bank_statement_completion_rule_5')
|
|
rule_ids += cls.env.ref('account_move_base_import.'
|
|
'bank_statement_completion_rule_4')
|
|
rule_ids += cls.env.ref('account_move_base_import.'
|
|
'bank_statement_completion_rule_3')
|
|
rule_ids += cls.env.ref('account_move_base_import.'
|
|
'bank_statement_completion_rule_2')
|
|
rule_ids += cls.env.ref('account_move_so_import.'
|
|
'bank_statement_completion_rule_1')
|
|
# create journal with profile
|
|
cls.journal = cls.env['account.journal'].create({
|
|
'name': 'Company Bank journal',
|
|
'type': 'bank',
|
|
'code': 'BNKFB',
|
|
'rule_ids': [
|
|
(4, comp_rule.id, False) for comp_rule in rule_ids
|
|
],
|
|
'used_for_completion': True,
|
|
})
|
|
cls.move = cls.env['account.move'].create(
|
|
{'name': 'Test move', 'journal_id': cls.journal.id}
|
|
)
|
|
cls.account_payable = cls.env['account.account'].search([
|
|
('user_type_id', '=',
|
|
cls.env.ref('account.data_account_type_payable').id),
|
|
], limit=1)
|
|
|
|
def test_completion_so(self):
|
|
self.order.action_confirm()
|
|
aml = self.env['account.move.line'].create(
|
|
{
|
|
'name': self.order.name,
|
|
'account_id': self.account_payable.id,
|
|
'move_id': self.move.id,
|
|
'credit': 0.0,
|
|
}
|
|
)
|
|
aml.with_context(check_move_validity=False).write({
|
|
'credit': 1,
|
|
})
|
|
self.assertFalse(self.move.partner_id)
|
|
self.move.button_auto_completion()
|
|
self.assertEqual(self.move.partner_id, self.partner,)
|