From 7e72fcaa095b77f7caac3fb6214ad21f7d6dd2b3 Mon Sep 17 00:00:00 2001 From: Filipa Lacerda Date: Fri, 24 Nov 2017 09:20:34 +0000 Subject: Prevent 500 error when inspecting job after trigger was removed --- app/views/projects/jobs/_sidebar.html.haml | 7 ++++--- changelogs/unreleased/36400-trigger-job.yml | 5 +++++ spec/views/projects/jobs/show.html.haml_spec.rb | 25 +++++++++++++++++++++++++ 3 files changed, 34 insertions(+), 3 deletions(-) create mode 100644 changelogs/unreleased/36400-trigger-job.yml diff --git a/app/views/projects/jobs/_sidebar.html.haml b/app/views/projects/jobs/_sidebar.html.haml index 17ac8a20a30..a71333497e6 100644 --- a/app/views/projects/jobs/_sidebar.html.haml +++ b/app/views/projects/jobs/_sidebar.html.haml @@ -44,9 +44,10 @@ %h4.title Trigger - %p - %span.build-light-text Token: - #{@build.trigger_request.trigger.short_token} + - if @build.trigger_request&.trigger&.short_token + %p + %span.build-light-text Token: + #{@build.trigger_request.trigger.short_token} - if @build.trigger_variables.any? %p diff --git a/changelogs/unreleased/36400-trigger-job.yml b/changelogs/unreleased/36400-trigger-job.yml new file mode 100644 index 00000000000..27243813dc8 --- /dev/null +++ b/changelogs/unreleased/36400-trigger-job.yml @@ -0,0 +1,5 @@ +--- +title: Prevent 500 error when inspecting job after trigger was removed +merge_request: +author: +type: fixed diff --git a/spec/views/projects/jobs/show.html.haml_spec.rb b/spec/views/projects/jobs/show.html.haml_spec.rb index d4279626e75..6139529013f 100644 --- a/spec/views/projects/jobs/show.html.haml_spec.rb +++ b/spec/views/projects/jobs/show.html.haml_spec.rb @@ -185,6 +185,31 @@ describe 'projects/jobs/show' do end end + context 'when incomplete trigger_request is used' do + before do + build.trigger_request = FactoryGirl.build(:ci_trigger_request, trigger: nil) + end + + it 'test should not render token block' do + render + + expect(rendered).not_to have_content('Token') + end + end + + context 'when complete trigger_request is used' do + before do + build.trigger_request = FactoryGirl.build(:ci_trigger_request) + end + + it 'should render token' do + render + + expect(rendered).to have_content('Token') + expect(rendered).to have_content(build.trigger_request.trigger.short_token) + end + end + describe 'commit title in sidebar' do let(:commit_title) { project.commit.title } -- cgit v1.2.1