from types import SimpleNamespace

from django.test import SimpleTestCase

from api.views.admin.pos_update_module_rules import (
    _serialize_pos_module_group_rule,
)


class PosUpdateModuleRulesTests(SimpleTestCase):
    def test_serializes_stable_relation_and_module_group_codes(self):
        relation = SimpleNamespace(
            id=17,
            code="POS_CORE",
            module_group_id=23,
            module_group=SimpleNamespace(
                code="CORE",
                name="Core",
            ),
        )

        self.assertEqual(
            _serialize_pos_module_group_rule(relation),
            {
                "id": 17,
                "code": "POS_CORE",
                "module_group_id": 23,
                "module_group_code": "CORE",
                "name": "Core",
            },
        )
