diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2019-11-14 00:06:45 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2019-11-14 00:06:45 +0300 |
commit | b42f312df5aee0f1b832b69171e9d1cf92eb7416 (patch) | |
tree | cf0f4e59d45688723d3d534ddf13564fa10d3050 /spec/frontend/error_tracking_settings | |
parent | 57e3d49fc0fb99f42ac178761fc6232715734020 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/frontend/error_tracking_settings')
-rw-r--r-- | spec/frontend/error_tracking_settings/components/error_tracking_form_spec.js | 17 | ||||
-rw-r--r-- | spec/frontend/error_tracking_settings/store/actions_spec.js | 16 |
2 files changed, 29 insertions, 4 deletions
diff --git a/spec/frontend/error_tracking_settings/components/error_tracking_form_spec.js b/spec/frontend/error_tracking_settings/components/error_tracking_form_spec.js index feaf8fc6d0f..bff8ad0877a 100644 --- a/spec/frontend/error_tracking_settings/components/error_tracking_form_spec.js +++ b/spec/frontend/error_tracking_settings/components/error_tracking_form_spec.js @@ -1,6 +1,7 @@ import Vuex from 'vuex'; import { createLocalVue, shallowMount } from '@vue/test-utils'; -import { GlButton, GlFormInput } from '@gitlab/ui'; +import { GlFormInput } from '@gitlab/ui'; +import LoadingButton from '~/vue_shared/components/loading_button.vue'; import ErrorTrackingForm from '~/error_tracking_settings/components/error_tracking_form.vue'; import createStore from '~/error_tracking_settings/store'; import { defaultProps } from '../mock'; @@ -42,7 +43,7 @@ describe('error tracking settings form', () => { .attributes('id'), ).toBe('error-tracking-token'); - expect(wrapper.findAll(GlButton).exists()).toBe(true); + expect(wrapper.findAll(LoadingButton).exists()).toBe(true); }); it('is rendered with labels and placeholders', () => { @@ -63,6 +64,18 @@ describe('error tracking settings form', () => { }); }); + describe('loading projects', () => { + beforeEach(() => { + store.state.isLoadingProjects = true; + }); + + it('shows loading spinner', () => { + const { label, loading } = wrapper.find(LoadingButton).props(); + expect(loading).toBe(true); + expect(label).toBe('Connecting'); + }); + }); + describe('after a successful connection', () => { beforeEach(() => { store.state.connectSuccessful = true; diff --git a/spec/frontend/error_tracking_settings/store/actions_spec.js b/spec/frontend/error_tracking_settings/store/actions_spec.js index 1eab0f7470b..e12c4e20f58 100644 --- a/spec/frontend/error_tracking_settings/store/actions_spec.js +++ b/spec/frontend/error_tracking_settings/store/actions_spec.js @@ -69,7 +69,14 @@ describe('error tracking settings actions', () => { }); it('should request projects correctly', done => { - testAction(actions.requestProjects, null, state, [{ type: types.RESET_CONNECT }], [], done); + testAction( + actions.requestProjects, + null, + state, + [{ type: types.SET_PROJECTS_LOADING, payload: true }, { type: types.RESET_CONNECT }], + [], + done, + ); }); it('should receive projects correctly', done => { @@ -81,6 +88,7 @@ describe('error tracking settings actions', () => { [ { type: types.UPDATE_CONNECT_SUCCESS }, { type: types.RECEIVE_PROJECTS, payload: testPayload }, + { type: types.SET_PROJECTS_LOADING, payload: false }, ], [], done, @@ -93,7 +101,11 @@ describe('error tracking settings actions', () => { actions.receiveProjectsError, testPayload, state, - [{ type: types.UPDATE_CONNECT_ERROR }, { type: types.CLEAR_PROJECTS }], + [ + { type: types.UPDATE_CONNECT_ERROR }, + { type: types.CLEAR_PROJECTS }, + { type: types.SET_PROJECTS_LOADING, payload: false }, + ], [], done, ); |