Tower: upload cetmix_tower_server 16.0.3.0.1 (via marketplace)
This commit is contained in:
81
addons/cetmix_tower_server/tests/test_jet_create_wizard.py
Normal file
81
addons/cetmix_tower_server/tests/test_jet_create_wizard.py
Normal file
@@ -0,0 +1,81 @@
|
||||
# Copyright (C) 2025 Cetmix OÜ
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
|
||||
from .common_jets import TestTowerJetsCommon
|
||||
|
||||
|
||||
class TestJetCreateWizard(TestTowerJetsCommon):
|
||||
"""Tests for `cx.tower.jet.create.wizard`"""
|
||||
|
||||
def test_action_confirm_creates_jet(self):
|
||||
"""
|
||||
Ensure that the wizard creates a new jet using the selected template.
|
||||
"""
|
||||
wizard_model = self.env["cx.tower.jet.create.wizard"]
|
||||
|
||||
wizard = wizard_model.create(
|
||||
{
|
||||
"name_type": "m",
|
||||
"name": "Wizard Jet",
|
||||
"jet_template_id": self.jet_template_test.id,
|
||||
"server_id": self.server_test_1.id,
|
||||
}
|
||||
)
|
||||
|
||||
action = wizard.action_confirm()
|
||||
|
||||
jet = self.Jet.browse(action["res_id"])
|
||||
self.assertTrue(jet.exists(), "Wizard action should return the created jet")
|
||||
self.assertEqual(jet.name, "Wizard Jet")
|
||||
self.assertEqual(jet.server_id, self.server_test_1)
|
||||
self.assertEqual(jet.jet_template_id, self.jet_template_test)
|
||||
|
||||
def test_action_confirm_sets_custom_variables(self):
|
||||
"""
|
||||
Ensure custom variable values from the wizard are stored on the created jet.
|
||||
"""
|
||||
wizard_model = self.env["cx.tower.jet.create.wizard"]
|
||||
custom_variable = self.Variable.create(
|
||||
{
|
||||
"name": "Wizard Custom Variable",
|
||||
}
|
||||
)
|
||||
custom_value = "custom value"
|
||||
|
||||
wizard = wizard_model.create(
|
||||
{
|
||||
"name_type": "m",
|
||||
"name": "Wizard Jet With Variables",
|
||||
"jet_template_id": self.jet_template_test.id,
|
||||
"server_id": self.server_test_1.id,
|
||||
"use_custom_variables": "y",
|
||||
"line_ids": [
|
||||
(
|
||||
0,
|
||||
0,
|
||||
{
|
||||
"variable_id": custom_variable.id,
|
||||
"value_char": custom_value,
|
||||
},
|
||||
)
|
||||
],
|
||||
}
|
||||
)
|
||||
|
||||
action = wizard.action_confirm()
|
||||
jet = self.Jet.browse(action["res_id"])
|
||||
custom_lines = jet.variable_value_ids.filtered(
|
||||
lambda line: line.variable_id == custom_variable
|
||||
)
|
||||
|
||||
self.assertEqual(len(custom_lines), 1, "Custom variable should be stored once")
|
||||
self.assertEqual(
|
||||
custom_lines.variable_id,
|
||||
custom_variable,
|
||||
"Custom variable record should be linked to the expected variable",
|
||||
)
|
||||
self.assertEqual(
|
||||
custom_lines.value_char,
|
||||
custom_value,
|
||||
"Created jet should keep custom variable values from the wizard",
|
||||
)
|
||||
Reference in New Issue
Block a user