Files
account-financial-tools/account_move_force_removal/tests/test_move.py
Pedro M. Baeza b479b347ad [FIX] account_move_force_removal: Tests in post-install + remove extra data + proper default
If not, there's no guarantee that the chart of accounts is populated,
and the tests may fail.

Besides, we are removing the explicit account search + assign for
avoiding problems on integration tests.

And finally, the default value should be `move_type` instead of `type`,
as it has changed in this version.
2022-07-28 12:49:55 +02:00

45 lines
1.5 KiB
Python

# Copyright 2020 Tecnativa - Víctor Martínez
# License AGPL-3 - See https://www.gnu.org/licenses/agpl-3.0.html
from odoo.exceptions import UserError
from odoo.tests import Form, tagged
from odoo.tests.common import SavepointCase
@tagged("post_install", "-at_install")
class TestMove(SavepointCase):
@classmethod
def setUpClass(cls):
super().setUpClass()
cls.partner = cls.env["res.partner"].create(
{"name": "Test customer", "customer_rank": 1}
)
cls.product = cls.env["product.product"].create(
{"name": "Test product", "type": "service"}
)
cls.company = cls.env.company
invoice = Form(
cls.env["account.move"].with_context(
default_move_type="out_invoice", default_company_id=cls.env.company.id
)
)
invoice.partner_id = cls.partner
with invoice.invoice_line_ids.new() as line_form:
line_form.product_id = cls.product
line_form.quantity = 1.0
line_form.price_unit = 10
invoice = invoice.save()
invoice.action_post()
cls.invoice = invoice
def test_remove_invoice_error(self):
# Delete invoice while name isn't /
with self.assertRaises(UserError):
self.invoice.unlink()
def test_ok_invoice_error(self):
# Delete invoice (previously draft + camcel)
self.invoice.button_draft()
self.invoice.button_cancel()
self.invoice.unlink()