import json import unittest from pathlib import Path FLOW = Path(__file__).parents[1] / "flow" / "flow_auto_movie_pipeline.json" class FlowImportFailureRoutingTests(unittest.TestCase): def test_arr_import_failures_route_to_fail_flow(self): flow = json.loads(FLOW.read_text()) fail_node = next( part for part in flow["Parts"] if part.get("FlowElementUid") == "FileFlows.BasicNodes.Functions.FailFlow" ) import_nodes = [ part for part in flow["Parts"] if part.get("Name") in {"Sonarr - Trigger Manual Import", "Radarr - Trigger Manual Import"} ] self.assertEqual(len(import_nodes), 4) for node in import_nodes: with self.subTest(node=node["Uid"]): self.assertEqual(node["ErrorConnection"]["InputNode"], fail_node["Uid"]) if __name__ == "__main__": unittest.main()