mirror of
https://github.com/bringout/oca-technical.git
synced 2026-04-18 22:32:01 +02:00
Initial commit: OCA Technical packages (595 packages)
This commit is contained in:
commit
2cc02aac6e
24950 changed files with 2318079 additions and 0 deletions
|
|
@ -0,0 +1 @@
|
|||
from . import test_confirmation_wizard
|
||||
|
|
@ -0,0 +1,98 @@
|
|||
from odoo.exceptions import UserError
|
||||
from odoo.tests import TransactionCase
|
||||
|
||||
|
||||
class TestConfirmationWizard(TransactionCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
self.partner = self.env["res.partner"].create(
|
||||
{
|
||||
"name": "Test Partner",
|
||||
}
|
||||
)
|
||||
|
||||
def test_confirm_message(self):
|
||||
"""Test flow when create confirmation wizard with method"""
|
||||
confirmation_wizard_obj = self.env["confirmation.wizard"]
|
||||
|
||||
# Default behavior
|
||||
action = confirmation_wizard_obj.confirm_message(
|
||||
"Message Test",
|
||||
self.partner,
|
||||
)
|
||||
excepted_action = self.env["ir.actions.actions"]._for_xml_id(
|
||||
"confirmation_wizard.confirmation_wizard_action"
|
||||
)
|
||||
excepted_action["context"] = self.env.context
|
||||
|
||||
# Wizard with title and context
|
||||
excepted_title = "Confirm Wizard"
|
||||
action = confirmation_wizard_obj.with_context(hide_cancel=True).confirm_message(
|
||||
"Message Test", self.partner, title=excepted_title
|
||||
)
|
||||
self.assertEqual(action["name"], excepted_title, "Title must be the same")
|
||||
self.assertTrue(
|
||||
action["context"]["hide_cancel"], "Invisible Cancel must be True"
|
||||
)
|
||||
|
||||
def test_confirm_no_action_message(self):
|
||||
"""Test flow when create confirmation wizard with window close"""
|
||||
confirmation_wizard_obj = self.env["confirmation.wizard"]
|
||||
|
||||
excepted_title = "Confirm Wizard"
|
||||
action = confirmation_wizard_obj.confirm_message(
|
||||
"Message Test", self.partner, title=excepted_title
|
||||
)
|
||||
self.assertEqual(action["name"], excepted_title, "Title must be the same")
|
||||
|
||||
def test_action_confirm_method(self):
|
||||
"""Test flow when confirm wizard with return type method"""
|
||||
vals = {
|
||||
"message": "Message Test",
|
||||
"res_ids": "",
|
||||
"return_type": "method",
|
||||
"res_model": "res.partner",
|
||||
"callback_method": "",
|
||||
"callback_params": {},
|
||||
}
|
||||
wizard = self.env["confirmation.wizard"].create(vals)
|
||||
with self.assertRaises(UserError) as e:
|
||||
wizard.action_confirm()
|
||||
self.assertEqual(
|
||||
str(e.exception), "Records (IDS: '') not found in model 'res.partner'."
|
||||
)
|
||||
|
||||
vals1 = {**vals, "res_ids": ",".join(map(str, self.partner.ids))}
|
||||
wizard = self.env["confirmation.wizard"].create(vals1)
|
||||
with self.assertRaises(UserError) as e:
|
||||
wizard.action_confirm()
|
||||
self.assertEqual(
|
||||
str(e.exception), "Method '' is not found on model 'res.partner'."
|
||||
)
|
||||
|
||||
vals2 = {
|
||||
**vals1,
|
||||
"callback_method": "write",
|
||||
"callback_params": {"vals": {"name": "New Partner #1"}},
|
||||
}
|
||||
wizard = self.env["confirmation.wizard"].create(vals2)
|
||||
result = wizard.action_confirm()
|
||||
self.assertTrue(result, "Result must be True")
|
||||
self.assertEqual(
|
||||
self.partner.name,
|
||||
"New Partner #1",
|
||||
"Partner name must be equal to 'New Partner #1'",
|
||||
)
|
||||
|
||||
def test_action_confirm_window_close(self):
|
||||
"""Test flow when confirm wizard with return type window close"""
|
||||
wizard = self.env["confirmation.wizard"].create(
|
||||
{
|
||||
"message": "Message Confirmation Text",
|
||||
"return_type": "window_close",
|
||||
}
|
||||
)
|
||||
result = wizard.action_confirm()
|
||||
self.assertDictEqual(
|
||||
result, {"type": "ir.actions.act_window_close"}, "Dicts must be the same"
|
||||
)
|
||||
Loading…
Add table
Add a link
Reference in a new issue