diff --git a/src/bioflowinsighterror.py b/src/bioflowinsighterror.py index 82c3a655c48612b8da53ba4a6dc4ce54b3a638bc..a9489087bed4ec55b7076ceceb09c1f9e36a1f55 100644 --- a/src/bioflowinsighterror.py +++ b/src/bioflowinsighterror.py @@ -42,6 +42,7 @@ class BioFlowInsightError(Exception): #* [18] -> something is expected to be defined in a file but is not #* [20] -> The sibworkflow either emits nothing or to many values for a use in an operation #* [22] -> a subworkflow or process defined was defined badly +#* [24] -> The user gives a relevant process which isn't in the workflow ######################## diff --git a/src/workflow.py b/src/workflow.py index 03e0146bb5c2be0e06cdd1590297048a7e271331..310bcd47bbe671b28ef649cbc1de3fb4102d01c6 100644 --- a/src/workflow.py +++ b/src/workflow.py @@ -543,6 +543,13 @@ George Marchment, Bryan Brancotte, Marie Schmit, Frédéric Lemoine, Sarah Cohen self.nextflow_file.generate_process_dependency_graph(render_graphs = render_graphs, processes_2_remove = self.tab_processes_2_remove) def generate_user_view(self, relevant_processes = [], render_graphs = True): + #Check all relevat processes are in wf + workflow_processes = [] + for p in self.get_processes_called(): + workflow_processes.append(p.get_name()) + for p in relevant_processes: + if(p not in workflow_processes): + raise BioFlowInsightError(f"Process {p} given in relevant processes is not present in the workflow's processes", 24) self.iniatilise_tab_processes_2_remove() self.nextflow_file.generate_user_view(relevant_processes = relevant_processes, render_graphs = render_graphs, processes_2_remove = self.tab_processes_2_remove)