diff options
author | Phil Hughes <me@iamphill.com> | 2018-01-12 13:10:49 +0000 |
---|---|---|
committer | Phil Hughes <me@iamphill.com> | 2018-01-12 13:10:49 +0000 |
commit | 46ad550a0a6bd332e3bd16a06ce21e0de1b46cd3 (patch) | |
tree | ad543bd57e101997a241896185e2685a121c64d0 | |
parent | 5431b5039135dadee88fe32c95ef6a1fc7709c98 (diff) | |
parent | dddd261c34d9a06f35957219b7813b32438c718b (diff) | |
download | gitlab-ce-46ad550a0a6bd332e3bd16a06ce21e0de1b46cd3.tar.gz |
Merge branch '41937-vue-prop-type' into 'master'
Resolve "Fix type is started key"
Closes #41937
See merge request gitlab-org/gitlab-ce!16407
-rw-r--r-- | app/assets/javascripts/jobs/components/header.vue | 6 | ||||
-rw-r--r-- | spec/javascripts/jobs/header_spec.js | 34 |
2 files changed, 31 insertions, 9 deletions
diff --git a/app/assets/javascripts/jobs/components/header.vue b/app/assets/javascripts/jobs/components/header.vue index 9e3f659db5f..321a4872ccc 100644 --- a/app/assets/javascripts/jobs/components/header.vue +++ b/app/assets/javascripts/jobs/components/header.vue @@ -30,8 +30,12 @@ shouldRenderContent() { return !this.isLoading && Object.keys(this.job).length; }, + /** + * When job has not started the key will be `false` + * When job started the key will be a string with a date. + */ jobStarted() { - return this.job.started; + return !this.job.started === false; }, }, watch: { diff --git a/spec/javascripts/jobs/header_spec.js b/spec/javascripts/jobs/header_spec.js index 83395ea451e..a9df0418d5d 100644 --- a/spec/javascripts/jobs/header_spec.js +++ b/spec/javascripts/jobs/header_spec.js @@ -31,6 +31,7 @@ describe('Job details header', () => { email: 'foo@bar.com', avatar_url: 'link', }, + started: '2018-01-08T09:48:27.319Z', new_issue_path: 'path', }, isLoading: false, @@ -43,15 +44,32 @@ describe('Job details header', () => { vm.$destroy(); }); - it('should render provided job information', () => { - expect( - vm.$el.querySelector('.header-main-content').textContent.replace(/\s+/g, ' ').trim(), - ).toEqual('failed Job #123 triggered 3 weeks ago by Foo'); + describe('triggered job', () => { + beforeEach(() => { + vm = mountComponent(HeaderComponent, props); + }); + + it('should render provided job information', () => { + expect( + vm.$el.querySelector('.header-main-content').textContent.replace(/\s+/g, ' ').trim(), + ).toEqual('failed Job #123 triggered 3 weeks ago by Foo'); + }); + + it('should render new issue link', () => { + expect( + vm.$el.querySelector('.js-new-issue').getAttribute('href'), + ).toEqual(props.job.new_issue_path); + }); }); - it('should render new issue link', () => { - expect( - vm.$el.querySelector('.js-new-issue').getAttribute('href'), - ).toEqual(props.job.new_issue_path); + describe('created job', () => { + it('should render created key', () => { + props.job.started = false; + vm = mountComponent(HeaderComponent, props); + + expect( + vm.$el.querySelector('.header-main-content').textContent.replace(/\s+/g, ' ').trim(), + ).toEqual('failed Job #123 created 3 weeks ago by Foo'); + }); }); }); |