def test_workflow_run(self): with TestAreaContext("python/job_queue/workflow") as work_area: WorkflowCommon.createExternalDumpJob() joblist = WorkflowJoblist() self.assertTrue(joblist.addJobFromFile("DUMP", "dump_job")) self.assertTrue("DUMP" in joblist) workflow = Workflow("dump_workflow", joblist) self.assertTrue(len(workflow), 2) context = SubstitutionList() context.addItem("<PARAM>", "text") self.assertTrue(workflow.run(None, verbose=True, context=context)) with open("dump1", "r") as f: self.assertEqual(f.read(), "dump_text_1") with open("dump2", "r") as f: self.assertEqual(f.read(), "dump_text_2")
def test_substitution_list(self): subst_list = SubstitutionList() subst_list.addItem("Key", "Value", "Doc String") self.assertEqual(len(subst_list), 1) with self.assertRaises(KeyError): item = subst_list[2] with self.assertRaises(KeyError): item = subst_list["NoSuchKey"] with self.assertRaises(KeyError): item = subst_list.doc("NoSuchKey") self.assertTrue("Key" in subst_list) self.assertEqual(subst_list["Key"], "Value") self.assertEqual(subst_list.doc("Key"), "Doc String") subst_list.addItem("Key2", "Value2", "Doc String2") self.assertEqual(len(subst_list), 2) keys = subst_list.keys() self.assertEqual(keys[0], "Key") self.assertEqual(keys[1], "Key2") self.assertIn("Key", str(subst_list)) self.assertIn("SubstitutionList", repr(subst_list)) self.assertIn("2", repr(subst_list)) self.assertEqual(1729, subst_list.get("nosuchkey", 1729)) self.assertIsNone(subst_list.get("nosuchkey")) self.assertIsNone(subst_list.get(513)) for key in ("Key", "Key2"): self.assertEqual(subst_list[key], subst_list.get(key))