In cases where deletion of a child would invalidate the parent object, we should cascade delete (example: deleting a Task from a Test)
-> decided to disable the delete if deleting the child would invalidate parent
-> After discussing only cases that would break is when deleting either group or test from task (only case to disable delete)