You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

83 lines
3.0 KiB

# Copyright 2020 Tecnativa - João Marques
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0
from odoo.tests import common
class TestAccountBankStatementClearPartner(common.SavepointCase):
@classmethod
def setUpClass(cls):
super(TestAccountBankStatementClearPartner, cls).setUpClass()
cls.partner_1 = cls.env['res.partner'].create(
{
"name": "Partner 1",
}
)
cls.partner_2 = cls.env['res.partner'].create(
{
"name": "Partner 2",
}
)
cls.account_type_1 = cls.env['account.account.type'].create({
"name": "Test Account Type 1",
"type": "other"
})
cls.account_1 = cls.env['account.account'].create({
"name": "Test Account 1",
"code": "AAAAAAAAAAAAAAAA",
"user_type_id": cls.account_type_1.id,
})
cls.sequence_1 = cls.env['ir.sequence'].create({
"name": "Test Sequence 1",
})
cls.journal_1 = cls.env['account.journal'].create({
"name": "Test Journal 1",
"type": "bank",
"sequence_id": cls.sequence_1.id,
})
cls.statement_1 = cls.env["account.bank.statement"].create({
"name": "Test Bank Statement 1",
"journal_id": cls.journal_1.id,
})
cls.account_move_1 = cls.env["account.move"].create({
"name": "Test Account Move 1",
"journal_id": cls.journal_1.id,
})
cls.account_move_line_1 = cls.env["account.move.line"].create({
"move_id": cls.account_move_1.id,
"account_id": cls.account_1.id,
})
line_obj = cls.env["account.bank.statement.line"]
cls.st_line_w_partner_not_reconciled = line_obj.create({
"name": "Test Account Bank Statement 1",
"statement_id": cls.statement_1.id,
"partner_id": cls.partner_1.id,
"journal_entry_ids": False,
"account_id": False,
})
cls.st_line_wo_partner_not_reconciled = line_obj.create({
"name": "Test Account Bank Statement 2",
"statement_id": cls.statement_1.id,
"partner_id": False,
"journal_entry_ids": False,
"account_id": False,
})
cls.st_line_w_partner_reconciled = line_obj.create({
"name": "Test Account Bank Statement 3",
"statement_id": cls.statement_1.id,
"partner_id": cls.partner_2.id,
})
cls.account_move_line_1.write({
"statement_line_id": cls.st_line_w_partner_reconciled.id,
})
def test_bank_statements_clear_partner(self):
self.statement_1.clear_partners()
# Confirm statement_line_1 has no parter
self.assertFalse(
self.st_line_w_partner_not_reconciled.partner_id
)
# Confirm statement_line_3 still has partner because it was already reconciled
self.assertTrue(
self.st_line_w_partner_reconciled.partner_id
)