diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-02-18 09:45:46 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-02-18 09:45:46 +0000 |
commit | a7b3560714b4d9cc4ab32dffcd1f74a284b93580 (patch) | |
tree | 7452bd5c3545c2fa67a28aa013835fb4fa071baf /spec/frontend/projects/components | |
parent | ee9173579ae56a3dbfe5afe9f9410c65bb327ca7 (diff) | |
download | gitlab-ce-a7b3560714b4d9cc4ab32dffcd1f74a284b93580.tar.gz |
Add latest changes from gitlab-org/gitlab@14-8-stable-eev14.8.0-rc42
Diffstat (limited to 'spec/frontend/projects/components')
4 files changed, 98 insertions, 24 deletions
diff --git a/spec/frontend/projects/components/__snapshots__/project_delete_button_spec.js.snap b/spec/frontend/projects/components/__snapshots__/project_delete_button_spec.js.snap index e1e1aac09aa..b8f9951bbfc 100644 --- a/spec/frontend/projects/components/__snapshots__/project_delete_button_spec.js.snap +++ b/spec/frontend/projects/components/__snapshots__/project_delete_button_spec.js.snap @@ -49,16 +49,17 @@ exports[`Project remove modal initialized matches the snapshot 1`] = ` primarybuttontext="" secondarybuttonlink="" secondarybuttontext="" - title="You are about to permanently delete this project" + title="" variant="danger" > - <p> - This project is - <strong> - NOT - </strong> - a fork, and has the following: - </p> + <h4 + class="gl-alert-title" + data-testid="delete-alert-title" + > + + You are about to delete this project containing: + + </h4> <ul> <li> @@ -77,25 +78,17 @@ exports[`Project remove modal initialized matches the snapshot 1`] = ` 4 stars </li> </ul> - After a project is permanently deleted, it - <strong> - cannot be recovered - </strong> - . Permanently deleting this project will - <strong> - immediately delete - </strong> - its repositories and + This project is <strong> - all related resources + NOT </strong> - , including issues, merge requests etc. + a fork. This process deletes the project repository and all related resources. </gl-alert-stub> <p class="gl-mb-1" > - Please type the following to confirm: + Enter the following to confirm: </p> <p> diff --git a/spec/frontend/projects/components/project_delete_button_spec.js b/spec/frontend/projects/components/project_delete_button_spec.js index bb6021fadda..a3bc4931eb3 100644 --- a/spec/frontend/projects/components/project_delete_button_spec.js +++ b/spec/frontend/projects/components/project_delete_button_spec.js @@ -50,7 +50,12 @@ describe('Project remove modal', () => { it('passes confirmPhrase and formPath props to the shared delete button', () => { expect(findSharedDeleteButton().props()).toEqual({ confirmPhrase: defaultProps.confirmPhrase, + forksCount: defaultProps.forksCount, formPath: defaultProps.formPath, + isFork: defaultProps.isFork, + issuesCount: defaultProps.issuesCount, + mergeRequestsCount: defaultProps.mergeRequestsCount, + starsCount: defaultProps.starsCount, }); }); }); diff --git a/spec/frontend/projects/components/shared/__snapshots__/delete_button_spec.js.snap b/spec/frontend/projects/components/shared/__snapshots__/delete_button_spec.js.snap index dd54db7dc0a..2d1039a8743 100644 --- a/spec/frontend/projects/components/shared/__snapshots__/delete_button_spec.js.snap +++ b/spec/frontend/projects/components/shared/__snapshots__/delete_button_spec.js.snap @@ -34,13 +34,63 @@ exports[`Project remove modal intialized matches the snapshot 1`] = ` ok-variant="danger" title-class="gl-text-red-500" > - Delete project. Are you ABSOLUTELY SURE? + Are you absolutely sure? <div> + <gl-alert-stub + class="gl-mb-5" + dismisslabel="Dismiss" + primarybuttonlink="" + primarybuttontext="" + secondarybuttonlink="" + secondarybuttontext="" + title="" + variant="danger" + > + <h4 + class="gl-alert-title" + data-testid="delete-alert-title" + > + + You are about to delete this project containing: + + </h4> + + <ul> + <li> + <gl-sprintf-stub + message="1 issue" + /> + </li> + + <li> + <gl-sprintf-stub + message="2 merge requests" + /> + </li> + + <li> + <gl-sprintf-stub + message="3 forks" + /> + </li> + + <li> + <gl-sprintf-stub + message="4 stars" + /> + </li> + </ul> + + <gl-sprintf-stub + data-testid="delete-alert-body" + message="This project is %{strongStart}NOT%{strongEnd} a fork. This process deletes the project repository and all related resources." + /> + </gl-alert-stub> <p class="gl-mb-1" > - Please type the following to confirm: + Enter the following to confirm: </p> <p> diff --git a/spec/frontend/projects/components/shared/delete_button_spec.js b/spec/frontend/projects/components/shared/delete_button_spec.js index 3e491584670..45c39ee91d8 100644 --- a/spec/frontend/projects/components/shared/delete_button_spec.js +++ b/spec/frontend/projects/components/shared/delete_button_spec.js @@ -12,15 +12,25 @@ describe('Project remove modal', () => { const findConfirmButton = () => wrapper.find('.js-modal-action-primary'); const findAuthenticityTokenInput = () => findFormElement().find('input[name=authenticity_token]'); const findModal = () => wrapper.find(GlModal); + const findTitle = () => wrapper.find('[data-testid="delete-alert-title"]'); + const findAlertBody = () => wrapper.find('[data-testid="delete-alert-body"]'); const defaultProps = { confirmPhrase: 'foo', formPath: 'some/path', + isFork: false, + issuesCount: 1, + mergeRequestsCount: 2, + forksCount: 3, + starsCount: 4, }; - const createComponent = (data = {}, stubs = {}) => { + const createComponent = (data = {}, stubs = {}, props = {}) => { wrapper = shallowMount(SharedDeleteButton, { - propsData: defaultProps, + propsData: { + ...defaultProps, + ...props, + }, data: () => data, stubs: { GlModal: stubComponent(GlModal, { @@ -88,4 +98,20 @@ describe('Project remove modal', () => { expect(findFormElement().element.submit).toHaveBeenCalled(); }); }); + + describe('when project is a fork', () => { + beforeEach(() => { + createComponent({}, {}, { isFork: true }); + }); + + it('matches the fork title', () => { + expect(findTitle().text()).toEqual('You are about to delete this forked project containing:'); + }); + + it('matches the fork body', () => { + expect(findAlertBody().attributes().message).toEqual( + 'This process deletes the project repository and all related resources.', + ); + }); + }); }); |