Skip to content
Snippets Groups Projects
Commit afa92a8a authored by Jörn Künsemöller's avatar Jörn Künsemöller
Browse files

TMSS-221: allow empty scheduling units so that tests pass

parent ae092265
No related branches found
No related tags found
1 merge request!186Resolve TMSS-221
......@@ -314,13 +314,21 @@ class SchedulingUnitDraft(NamedCommon):
def relative_start_time(self) -> datetime.timedelta:
'''return the earliest relative start time of all tasks of this scheduling unit
'''
return min(self.task_drafts.all(), key=lambda x: x.relative_start_time).relative_start_time
task_drafts = list(self.task_drafts.all())
if task_drafts:
return min(task_drafts, key=lambda x: x.relative_start_time).relative_start_time
else:
return datetime.timedelta(seconds=0)
@property
def relative_stop_time(self) -> datetime.timedelta:
'''return the latest relative stop time of all tasks of this scheduling unit
'''
return max(self.task_drafts.all(), key=lambda x: x.relative_stop_time).relative_stop_time
task_drafts = list(self.task_drafts.all())
if task_drafts:
return max(task_drafts, key=lambda x: x.relative_stop_time).relative_stop_time
else:
return datetime.timedelta(seconds=0)
class SchedulingUnitBlueprint(NamedCommon):
......@@ -348,13 +356,21 @@ class SchedulingUnitBlueprint(NamedCommon):
def relative_start_time(self) -> datetime.timedelta:
'''return the earliest relative start time of all tasks of this scheduling unit
'''
return min(self.task_blueprints.all(), key=lambda x: x.relative_start_time).relative_start_time
task_blueprints = list(self.task_blueprints.all())
if task_blueprints:
return min(task_blueprints, key=lambda x: x.relative_start_time).relative_start_time
else:
return datetime.timedelta(seconds=0)
@property
def relative_stop_time(self) -> datetime.timedelta:
'''return the latest relative stop time of all tasks of this scheduling unit
'''
return max(self.task_blueprints.all(), key=lambda x: x.relative_stop_time).relative_stop_time
task_blueprints = list(self.task_blueprints.all())
if task_blueprints:
return max(task_blueprints, key=lambda x: x.relative_stop_time).relative_stop_time
else:
return datetime.timedelta(seconds=0)
@property
def start_time(self) -> datetime or None:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment