Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhil Hughes <me@iamphill.com>2018-08-13 13:17:36 +0300
committerPhil Hughes <me@iamphill.com>2018-08-13 13:17:36 +0300
commitd22b477d6f4b95455abd7bed8257c64d5f1daa72 (patch)
tree90153281f46d2679aeca61439dbfe7fa63a5550f /spec/javascripts/jobs
parent6d9824c822772decf9a783ee4d1ad40e2ac64e9e (diff)
parent8d233e39f6a239011a9b8f69005a5c4915ceb262 (diff)
Merge branch '25990-web-terminal-improvements' into 'master'
Improve terminal button on job log page See merge request gitlab-org/gitlab-ce!21094
Diffstat (limited to 'spec/javascripts/jobs')
-rw-r--r--spec/javascripts/jobs/sidebar_details_block_spec.js67
1 files changed, 42 insertions, 25 deletions
diff --git a/spec/javascripts/jobs/sidebar_details_block_spec.js b/spec/javascripts/jobs/sidebar_details_block_spec.js
index 9c4454252ce..21ef5650b80 100644
--- a/spec/javascripts/jobs/sidebar_details_block_spec.js
+++ b/spec/javascripts/jobs/sidebar_details_block_spec.js
@@ -1,6 +1,7 @@
import Vue from 'vue';
import sidebarDetailsBlock from '~/jobs/components/sidebar_details_block.vue';
import job from './mock_data';
+import mountComponent from '../helpers/vue_mount_component_helper';
describe('Sidebar details block', () => {
let SidebarComponent;
@@ -20,39 +21,53 @@ describe('Sidebar details block', () => {
describe('when it is loading', () => {
it('should render a loading spinner', () => {
- vm = new SidebarComponent({
- propsData: {
- job: {},
- isLoading: true,
- },
- }).$mount();
-
+ vm = mountComponent(SidebarComponent, {
+ job: {},
+ isLoading: true,
+ });
expect(vm.$el.querySelector('.fa-spinner')).toBeDefined();
});
});
- describe("when user can't retry", () => {
+ describe('when there is no retry path retry', () => {
it('should not render a retry button', () => {
- vm = new SidebarComponent({
- propsData: {
- job: {},
- canUserRetry: false,
- isLoading: true,
- },
- }).$mount();
+ vm = mountComponent(SidebarComponent, {
+ job: {},
+ isLoading: false,
+ });
expect(vm.$el.querySelector('.js-retry-job')).toBeNull();
});
});
- beforeEach(() => {
- vm = new SidebarComponent({
- propsData: {
+ describe('without terminal path', () => {
+ it('does not render terminal link', () => {
+ vm = mountComponent(SidebarComponent, {
job,
- canUserRetry: true,
isLoading: false,
- },
- }).$mount();
+ });
+
+ expect(vm.$el.querySelector('.js-terminal-link')).toBeNull();
+ });
+ });
+
+ describe('with terminal path', () => {
+ it('renders terminal link', () => {
+ vm = mountComponent(SidebarComponent, {
+ job,
+ isLoading: false,
+ terminalPath: 'job/43123/terminal',
+ });
+
+ expect(vm.$el.querySelector('.js-terminal-link')).not.toBeNull();
+ });
+ });
+
+ beforeEach(() => {
+ vm = mountComponent(SidebarComponent, {
+ job,
+ isLoading: false,
+ });
});
describe('actions', () => {
@@ -102,13 +117,15 @@ describe('Sidebar details block', () => {
});
it('should render runner ID', () => {
- expect(trimWhitespace(vm.$el.querySelector('.js-job-runner'))).toEqual('Runner: local ci runner (#1)');
+ expect(trimWhitespace(vm.$el.querySelector('.js-job-runner'))).toEqual(
+ 'Runner: local ci runner (#1)',
+ );
});
it('should render timeout information', () => {
- expect(
- trimWhitespace(vm.$el.querySelector('.js-job-timeout')),
- ).toEqual('Timeout: 1m 40s (from runner)');
+ expect(trimWhitespace(vm.$el.querySelector('.js-job-timeout'))).toEqual(
+ 'Timeout: 1m 40s (from runner)',
+ );
});
it('should render coverage', () => {