From cb0b16ebf6a56cd4cad8bdb8c7e915a3b75d6e10 Mon Sep 17 00:00:00 2001 From: Shinya Maeda Date: Fri, 2 Nov 2018 11:52:34 +0000 Subject: Add scheduled flag to job entity --- app/serializers/build_action_entity.rb | 7 ++++++- app/serializers/job_entity.rb | 1 + changelogs/unreleased/add-scheduled-flag-to-job-entity.yml | 5 +++++ spec/serializers/build_action_entity_spec.rb | 4 ++++ spec/serializers/job_entity_spec.rb | 1 + 5 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 changelogs/unreleased/add-scheduled-flag-to-job-entity.yml diff --git a/app/serializers/build_action_entity.rb b/app/serializers/build_action_entity.rb index 0db7875aa87..95833c3528f 100644 --- a/app/serializers/build_action_entity.rb +++ b/app/serializers/build_action_entity.rb @@ -12,7 +12,8 @@ class BuildActionEntity < Grape::Entity end expose :playable?, as: :playable - expose :scheduled_at, if: -> (build) { build.scheduled? } + expose :scheduled?, as: :scheduled + expose :scheduled_at, if: -> (*) { scheduled? } expose :unschedule_path, if: -> (build) { build.scheduled? } do |build| unschedule_project_job_path(build.project, build) @@ -25,4 +26,8 @@ class BuildActionEntity < Grape::Entity def playable? build.playable? && can?(request.current_user, :update_build, build) end + + def scheduled? + build.scheduled? + end end diff --git a/app/serializers/job_entity.rb b/app/serializers/job_entity.rb index a0a66511b7b..aebbc18e32f 100644 --- a/app/serializers/job_entity.rb +++ b/app/serializers/job_entity.rb @@ -33,6 +33,7 @@ class JobEntity < Grape::Entity end expose :playable?, as: :playable + expose :scheduled?, as: :scheduled expose :scheduled_at, if: -> (*) { scheduled? } expose :created_at expose :updated_at diff --git a/changelogs/unreleased/add-scheduled-flag-to-job-entity.yml b/changelogs/unreleased/add-scheduled-flag-to-job-entity.yml new file mode 100644 index 00000000000..a80b5a931b9 --- /dev/null +++ b/changelogs/unreleased/add-scheduled-flag-to-job-entity.yml @@ -0,0 +1,5 @@ +--- +title: Add scheduled flag to job entity +merge_request: 22710 +author: +type: other diff --git a/spec/serializers/build_action_entity_spec.rb b/spec/serializers/build_action_entity_spec.rb index 9e2bee2ee60..ea88951ebc6 100644 --- a/spec/serializers/build_action_entity_spec.rb +++ b/spec/serializers/build_action_entity_spec.rb @@ -26,6 +26,10 @@ describe BuildActionEntity do context 'when job is scheduled' do let(:job) { create(:ci_build, :scheduled) } + it 'returns scheduled' do + expect(subject[:scheduled]).to be_truthy + end + it 'returns scheduled_at' do expect(subject[:scheduled_at]).to eq(job.scheduled_at) end diff --git a/spec/serializers/job_entity_spec.rb b/spec/serializers/job_entity_spec.rb index 5fc27da4906..851b41a7f7e 100644 --- a/spec/serializers/job_entity_spec.rb +++ b/spec/serializers/job_entity_spec.rb @@ -117,6 +117,7 @@ describe JobEntity do end it 'contains scheduled_at' do + expect(subject[:scheduled]).to be_truthy expect(subject[:scheduled_at]).to eq(job.scheduled_at) end end -- cgit v1.2.1