+ def test_Process_removal(self) -> None:
+ """Test removal of Processes."""
+ assert isinstance(self.proc3.id_, int)
+ self.proc1.remove(self.db_conn)
+ self.assertEqual({self.proc2.id_, self.proc3.id_},
+ set(p.id_ for p in Process.all(self.db_conn)))
+ self.proc2.set_steps(self.db_conn, [(None, self.proc3.id_, None)])
+ self.proc2.explicit_steps[0].remove(self.db_conn)
+ retrieved = Process.by_id(self.db_conn, self.proc2.id_)
+ self.assertEqual(retrieved.explicit_steps, [])
+ self.proc2.set_steps(self.db_conn, [(None, self.proc3.id_, None)])
+ step = retrieved.explicit_steps[0]
+ self.proc2.remove(self.db_conn)
+ with self.assertRaises(NotFoundException):
+ ProcessStep.by_id(self.db_conn, step.id_)
+