Skip to content

Commit be41fde

Browse files
committed
Include proper unit for time duration in pipeline API
Signed-off-by: Keshav Priyadarshi <[email protected]>
1 parent 481653e commit be41fde

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

vulnerabilities/api_v2.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -644,6 +644,7 @@ class PipelineRunAPISerializer(serializers.HyperlinkedModelSerializer):
644644
status = serializers.SerializerMethodField()
645645
execution_time = serializers.SerializerMethodField()
646646
log = serializers.SerializerMethodField()
647+
execution_time = serializers.SerializerMethodField()
647648

648649
class Meta:
649650
model = PipelineRun
@@ -666,7 +667,7 @@ def get_status(self, run):
666667

667668
def get_execution_time(self, run):
668669
if run.execution_time:
669-
return round(run.execution_time, 2)
670+
return f"{round(run.execution_time, 2)}s"
670671

671672
def get_log(self, run):
672673
"""Return only last 5000 character of log."""
@@ -675,10 +676,13 @@ def get_log(self, run):
675676

676677
class PipelineScheduleAPISerializer(serializers.HyperlinkedModelSerializer):
677678
url = serializers.HyperlinkedIdentityField(
678-
view_name="schedule-detail", lookup_field="pipeline_id"
679+
view_name="schedule-detail",
680+
lookup_field="pipeline_id",
679681
)
680682
latest_run = serializers.SerializerMethodField()
681683
next_run_date = serializers.SerializerMethodField()
684+
run_interval = serializers.SerializerMethodField()
685+
execution_timeout = serializers.SerializerMethodField()
682686

683687
class Meta:
684688
model = PipelineSchedule
@@ -703,6 +707,12 @@ def get_latest_run(self, schedule):
703707
return PipelineRunAPISerializer(latest).data
704708
return None
705709

710+
def get_run_interval(self, schedule):
711+
return f"{schedule.run_interval}hr"
712+
713+
def get_execution_timeout(self, schedule):
714+
return f"{schedule.execution_timeout}hr"
715+
706716

707717
class PipelineScheduleCreateSerializer(serializers.ModelSerializer):
708718
class Meta:

vulnerabilities/tests/test_api_v2.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -757,7 +757,7 @@ def test_schedule_update_anon_user_not_permitted(self, mock_create_new_job):
757757

758758
self.assertNotEqual(response.status_code, status.HTTP_200_OK)
759759
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
760-
self.assertEqual(self.schedule1.run_interval, 1)
760+
self.assertEqual(self.schedule1.run_interval, 24)
761761

762762
@patch("vulnerabilities.models.PipelineSchedule.create_new_job")
763763
def test_schedule_update_with_staff_token_not_permitted(self, mock_create_new_job):
@@ -772,7 +772,7 @@ def test_schedule_update_with_staff_token_not_permitted(self, mock_create_new_jo
772772

773773
self.assertNotEqual(response.status_code, status.HTTP_200_OK)
774774
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
775-
self.assertEqual(self.schedule1.run_interval, 1)
775+
self.assertEqual(self.schedule1.run_interval, 24)
776776

777777
@patch("vulnerabilities.models.PipelineSchedule.create_new_job")
778778
def test_schedule_update_with_staff_session_permitted(self, mock_create_new_job):

0 commit comments

Comments
 (0)