diff options
Diffstat (limited to 'spec/frontend/environments/delete_environment_modal_spec.js')
-rw-r--r-- | spec/frontend/environments/delete_environment_modal_spec.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/spec/frontend/environments/delete_environment_modal_spec.js b/spec/frontend/environments/delete_environment_modal_spec.js index 50c4ca00009..48e4f661c1d 100644 --- a/spec/frontend/environments/delete_environment_modal_spec.js +++ b/spec/frontend/environments/delete_environment_modal_spec.js @@ -5,8 +5,11 @@ import VueApollo from 'vue-apollo'; import { s__, sprintf } from '~/locale'; import DeleteEnvironmentModal from '~/environments/components/delete_environment_modal.vue'; import createMockApollo from 'helpers/mock_apollo_helper'; +import waitForPromises from 'helpers/wait_for_promises'; +import createFlash from '~/flash'; import { resolvedEnvironment } from './graphql/mock_data'; +jest.mock('~/flash'); Vue.use(VueApollo); describe('~/environments/components/delete_environment_modal.vue', () => { @@ -54,6 +57,34 @@ describe('~/environments/components/delete_environment_modal.vue', () => { await nextTick(); + expect(createFlash).not.toHaveBeenCalled(); + + expect(deleteResolver).toHaveBeenCalledWith( + expect.anything(), + { environment: resolvedEnvironment }, + expect.anything(), + expect.anything(), + ); + }); + + it('should flash a message on error', async () => { + createComponent({ apolloProvider: mockApollo }); + + deleteResolver.mockRejectedValue(); + + wrapper.findComponent(GlModal).vm.$emit('primary'); + + await waitForPromises(); + + expect(createFlash).toHaveBeenCalledWith( + expect.objectContaining({ + message: s__( + 'Environments|An error occurred while deleting the environment. Check if the environment stopped; if not, stop it and try again.', + ), + captureError: true, + }), + ); + expect(deleteResolver).toHaveBeenCalledWith( expect.anything(), { environment: resolvedEnvironment }, |