import unittest from app import node_agent class NodeAgentReleaseNormalizationTests(unittest.TestCase): def test_normalize_text_list_supports_strings_and_lists(self) -> None: self.assertEqual( ["domaincheck-api", "domaincheck-worker"], node_agent._normalize_text_list("domaincheck-api\ndomaincheck-worker"), ) self.assertEqual( ["domaincheck-api", "domaincheck-worker"], node_agent._normalize_text_list(["domaincheck-api", " domaincheck-worker "]), ) self.assertEqual([], node_agent._normalize_text_list("")) def test_health_check_services_fall_back_to_restart_services_when_missing(self) -> None: result = node_agent._normalize_release_health_check_services( {}, ["domaincheck-worker"], ) self.assertEqual(["domaincheck-worker"], result) def test_health_check_services_can_be_explicitly_empty(self) -> None: result = node_agent._normalize_release_health_check_services( {"health_check_services": ""}, ["domaincheck-worker"], ) self.assertEqual([], result) def test_health_check_services_accept_multiline_string(self) -> None: result = node_agent._normalize_release_health_check_services( {"health_check_services": "domaincheck-api\ndomaincheck-sync-agent"}, ["domaincheck-worker"], ) self.assertEqual(["domaincheck-api", "domaincheck-sync-agent"], result) if __name__ == "__main__": unittest.main()