mirror of
https://github.com/OCA/account-reconcile.git
synced 2025-01-20 12:27:39 +02:00
[MIG] account_in_payment: Migration to 14.0
This commit is contained in:
@@ -5,11 +5,11 @@
|
|||||||
"name": "Account In Payment",
|
"name": "Account In Payment",
|
||||||
"summary": """
|
"summary": """
|
||||||
This module enables in-payment mode for your accounting""",
|
This module enables in-payment mode for your accounting""",
|
||||||
"version": "16.0.1.0.0",
|
"version": "14.0.1.0.0",
|
||||||
"license": "AGPL-3",
|
"license": "AGPL-3",
|
||||||
"author": "Dixmit,Odoo Community Association (OCA)",
|
"author": "Dixmit,Odoo Community Association (OCA)",
|
||||||
"website": "https://github.com/OCA/account-reconcile",
|
"website": "https://github.com/OCA/account-reconcile",
|
||||||
"depends": ["account_reconcile_oca"],
|
"depends": ["account"],
|
||||||
"data": [],
|
"data": [],
|
||||||
"demo": [],
|
"demo": [],
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,37 +26,13 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
|||||||
)
|
)
|
||||||
cls.current_assets_account = cls.env["account.account"].search(
|
cls.current_assets_account = cls.env["account.account"].search(
|
||||||
[
|
[
|
||||||
("account_type", "=", "asset_current"),
|
("internal_type", "=", "other"),
|
||||||
|
("internal_group", "=", "asset"),
|
||||||
("company_id", "=", cls.company.id),
|
("company_id", "=", cls.company.id),
|
||||||
],
|
],
|
||||||
limit=1,
|
limit=1,
|
||||||
)
|
)
|
||||||
cls.current_assets_account.reconcile = True
|
cls.current_assets_account.reconcile = True
|
||||||
# We need to make some fields visible in order to make the tests work
|
|
||||||
cls.env["ir.ui.view"].create(
|
|
||||||
{
|
|
||||||
"name": "DEMO Account bank statement",
|
|
||||||
"model": "account.bank.statement.line",
|
|
||||||
"inherit_id": cls.env.ref(
|
|
||||||
"account_reconcile_oca.bank_statement_line_form_reconcile_view"
|
|
||||||
).id,
|
|
||||||
"arch": """
|
|
||||||
<data>
|
|
||||||
<field name="manual_reference" position="attributes">
|
|
||||||
<attribute name="invisible">0</attribute>
|
|
||||||
</field>
|
|
||||||
<field name="manual_delete" position="attributes">
|
|
||||||
<attribute name="invisible">0</attribute>
|
|
||||||
</field>
|
|
||||||
<field name="partner_id" position="attributes">
|
|
||||||
<attribute name="invisible">0</attribute>
|
|
||||||
</field>
|
|
||||||
</data>
|
|
||||||
""",
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
# Testing reconcile action
|
|
||||||
|
|
||||||
def test_payment(self):
|
def test_payment(self):
|
||||||
inv1 = self.create_invoice(
|
inv1 = self.create_invoice(
|
||||||
@@ -79,21 +55,23 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
|||||||
"statement_id": bank_stmt.id,
|
"statement_id": bank_stmt.id,
|
||||||
"amount": -100,
|
"amount": -100,
|
||||||
"date": time.strftime("%Y-07-15"),
|
"date": time.strftime("%Y-07-15"),
|
||||||
|
"payment_ref": "Test Payment Ref",
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
receivable1 = inv1.line_ids.filtered(
|
payable1 = inv1.line_ids.filtered(
|
||||||
lambda line: line.account_id.account_type == "liability_payable"
|
lambda line: line.account_id.internal_type == "payable"
|
||||||
)
|
)
|
||||||
with Form(
|
|
||||||
bank_stmt_line,
|
|
||||||
view="account_reconcile_oca.bank_statement_line_form_reconcile_view",
|
|
||||||
) as f:
|
|
||||||
self.assertFalse(f.can_reconcile)
|
|
||||||
f.add_account_move_line_id = receivable1
|
|
||||||
self.assertFalse(f.add_account_move_line_id)
|
|
||||||
self.assertTrue(f.can_reconcile)
|
|
||||||
self.assertEqual(inv1.amount_residual_signed, -100)
|
self.assertEqual(inv1.amount_residual_signed, -100)
|
||||||
bank_stmt_line.reconcile_bank_line()
|
bank_stmt_line.process_reconciliation(
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"move_line": payable1,
|
||||||
|
"debit": abs(bank_stmt_line.amount),
|
||||||
|
"credit": 0.0,
|
||||||
|
"currency_id": bank_stmt_line.currency_id.id,
|
||||||
|
}
|
||||||
|
]
|
||||||
|
)
|
||||||
self.assertEqual(inv1.payment_state, "paid")
|
self.assertEqual(inv1.payment_state, "paid")
|
||||||
|
|
||||||
def test_in_payment(self):
|
def test_in_payment(self):
|
||||||
@@ -108,7 +86,7 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
|||||||
mail_create_nolog=True, **action["context"]
|
mail_create_nolog=True, **action["context"]
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
payments = form.save()._create_payments()
|
payments = form.save().action_create_payments()
|
||||||
self.assertEqual(inv1.payment_state, "in_payment")
|
self.assertEqual(inv1.payment_state, "in_payment")
|
||||||
bank_stmt = self.acc_bank_stmt_model.create(
|
bank_stmt = self.acc_bank_stmt_model.create(
|
||||||
{
|
{
|
||||||
@@ -125,21 +103,25 @@ class TestReconciliationWidget(TestAccountReconciliationCommon):
|
|||||||
"statement_id": bank_stmt.id,
|
"statement_id": bank_stmt.id,
|
||||||
"amount": -100,
|
"amount": -100,
|
||||||
"date": time.strftime("%Y-07-15"),
|
"date": time.strftime("%Y-07-15"),
|
||||||
|
"payment_ref": "Test Payment Ref",
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
receivable1 = payments.line_ids.filtered(lambda line: not line.reconciled)
|
payment_records = self.env["account.payment"].browse(payments["res_id"])
|
||||||
self.assertEqual(inv1.amount_residual_signed, 0)
|
receivable1 = payment_records.line_ids.filtered(
|
||||||
with Form(
|
lambda line: not line.reconciled
|
||||||
bank_stmt_line,
|
)
|
||||||
view="account_reconcile_oca.bank_statement_line_form_reconcile_view",
|
|
||||||
) as f:
|
|
||||||
self.assertFalse(f.can_reconcile)
|
|
||||||
f.add_account_move_line_id = receivable1
|
|
||||||
self.assertFalse(f.add_account_move_line_id)
|
|
||||||
self.assertTrue(f.can_reconcile)
|
|
||||||
self.assertEqual(inv1.amount_residual_signed, 0)
|
self.assertEqual(inv1.amount_residual_signed, 0)
|
||||||
self.assertFalse(receivable1.reconciled)
|
self.assertFalse(receivable1.reconciled)
|
||||||
bank_stmt_line.reconcile_bank_line()
|
bank_stmt_line.process_reconciliation(
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"move_line": receivable1,
|
||||||
|
"debit": abs(bank_stmt_line.amount),
|
||||||
|
"credit": 0.0,
|
||||||
|
"currency_id": bank_stmt_line.currency_id.id,
|
||||||
|
}
|
||||||
|
]
|
||||||
|
)
|
||||||
self.assertEqual(inv1.payment_state, "paid")
|
self.assertEqual(inv1.payment_state, "paid")
|
||||||
self.assertEqual(inv1.amount_residual_signed, 0)
|
self.assertEqual(inv1.amount_residual_signed, 0)
|
||||||
self.assertTrue(receivable1.reconciled)
|
self.assertTrue(receivable1.reconciled)
|
||||||
|
|||||||
Reference in New Issue
Block a user