diff options
Diffstat (limited to 'spec/frontend/ci/pipeline_schedules/components/table/cells/pipeline_schedule_target_spec.js')
-rw-r--r-- | spec/frontend/ci/pipeline_schedules/components/table/cells/pipeline_schedule_target_spec.js | 36 |
1 files changed, 27 insertions, 9 deletions
diff --git a/spec/frontend/ci/pipeline_schedules/components/table/cells/pipeline_schedule_target_spec.js b/spec/frontend/ci/pipeline_schedules/components/table/cells/pipeline_schedule_target_spec.js index 5cc3829efbd..70b4c7a5224 100644 --- a/spec/frontend/ci/pipeline_schedules/components/table/cells/pipeline_schedule_target_spec.js +++ b/spec/frontend/ci/pipeline_schedules/components/table/cells/pipeline_schedule_target_spec.js @@ -1,5 +1,6 @@ import { GlIcon, GlLink } from '@gitlab/ui'; import { shallowMount } from '@vue/test-utils'; +import { s__ } from '~/locale'; import PipelineScheduleTarget from '~/ci/pipeline_schedules/components/table/cells/pipeline_schedule_target.vue'; import { mockPipelineScheduleNodes } from '../../../mock_data'; @@ -20,18 +21,35 @@ describe('Pipeline schedule target', () => { const findIcon = () => wrapper.findComponent(GlIcon); const findLink = () => wrapper.findComponent(GlLink); + const findTarget = () => wrapper.findComponent('[data-testid="pipeline-schedule-target"]'); - beforeEach(() => { - createComponent(); - }); + describe('with ref', () => { + beforeEach(() => { + createComponent(); + }); + + it('displays icon', () => { + expect(findIcon().exists()).toBe(true); + expect(findIcon().props('name')).toBe('fork'); + }); - it('displays icon', () => { - expect(findIcon().exists()).toBe(true); - expect(findIcon().props('name')).toBe('fork'); + it('displays ref link', () => { + expect(findLink().attributes('href')).toBe(defaultProps.schedule.refPath); + expect(findLink().text()).toBe(defaultProps.schedule.refForDisplay); + }); }); - it('displays ref link', () => { - expect(findLink().attributes('href')).toBe(defaultProps.schedule.refPath); - expect(findLink().text()).toBe(defaultProps.schedule.refForDisplay); + describe('without refPath', () => { + beforeEach(() => { + createComponent({ + schedule: { ...mockPipelineScheduleNodes[0], refPath: null, refForDisplay: null }, + }); + }); + + it('displays none for the target', () => { + expect(findIcon().exists()).toBe(false); + expect(findLink().exists()).toBe(false); + expect(findTarget().text()).toBe(s__('PipelineSchedules|None')); + }); }); }); |