Files
odoo-addons/addons/cetmix_tower_server/tests/test_partner_server_btn.py

59 lines
2.1 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Copyright (C) 2022 Cetmix OÜ
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from odoo.tests.common import tagged
from .common import TestTowerCommon
@tagged("partner_servers_btn")
class TestPartnerServers(TestTowerCommon):
@classmethod
def setUpClass(cls):
super().setUpClass()
cls.partner_a = cls.env["res.partner"].create({"name": "Partner A"})
cls.partner_b = cls.env["res.partner"].create({"name": "Partner B"})
cls.partner_b_child = cls.env["res.partner"].create(
{
"name": "Partner B Child",
"parent_id": cls.partner_b.id,
}
)
cls.server_defaults = {
"name": "Test Server",
"ssh_username": "root",
"ssh_port": 22,
"ssh_password": "Test-P@ssw0rd-123",
"ip_v4_address": "127.0.0.1",
"skip_host_key": True,
}
cls.Server.create({"partner_id": cls.partner_b.id, **cls.server_defaults})
cls.Server.create({"partner_id": cls.partner_b.id, **cls.server_defaults})
cls.Server.create({"partner_id": cls.partner_b_child.id, **cls.server_defaults})
key = cls.Key.create({"name": "SSH Token", "key_type": "s"})
cls.KeyValue.create(
{
"key_id": key.id,
"partner_id": cls.partner_b.id,
"secret_value": "TOPSECRET",
}
)
def test_server_count_compute(self):
"""Server count: direct + onelevel child + zero if none."""
self.assertEqual(self.partner_b.server_count, 3)
self.assertEqual(self.partner_b_child.server_count, 1)
self.assertEqual(self.partner_a.server_count, 0)
def test_parent_with_only_child_servers(self):
"""Parent without servers directs and with child_of."""
parent = self.env["res.partner"].create({"name": "Parent Only"})
child = self.env["res.partner"].create(
{"name": "Child with Server", "parent_id": parent.id}
)
self.Server.create({"partner_id": child.id, **self.server_defaults})
self.assertEqual(parent.server_count, 1)