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:
Diffstat (limited to 'spec/frontend/vue_merge_request_widget/components/merge_checks_spec.js')
-rw-r--r--spec/frontend/vue_merge_request_widget/components/merge_checks_spec.js37
1 files changed, 27 insertions, 10 deletions
diff --git a/spec/frontend/vue_merge_request_widget/components/merge_checks_spec.js b/spec/frontend/vue_merge_request_widget/components/merge_checks_spec.js
index 48c01e3efad..054e90640c5 100644
--- a/spec/frontend/vue_merge_request_widget/components/merge_checks_spec.js
+++ b/spec/frontend/vue_merge_request_widget/components/merge_checks_spec.js
@@ -136,19 +136,19 @@ describe('Merge request merge checks component', () => {
});
it.each`
- identifier
- ${'conflict'}
- ${'discussions_not_resolved'}
- ${'need_rebase'}
- ${'default'}
- `('renders $identifier merge check', async ({ identifier }) => {
+ identifier | componentName
+ ${'conflict'} | ${'conflict'}
+ ${'discussions_not_resolved'} | ${'discussions_not_resolved'}
+ ${'need_rebase'} | ${'need_rebase'}
+ ${'policies_denied'} | ${'default'}
+ `('renders $identifier merge check', async ({ identifier, componentName }) => {
shallowMountComponent({ mergeabilityChecks: [{ status: 'failed', identifier }] });
wrapper.findComponent(StateContainer).vm.$emit('toggle');
await waitForPromises();
- const { default: component } = await COMPONENTS[identifier]();
+ const { default: component } = await COMPONENTS[componentName]();
expect(wrapper.findComponent(component).exists()).toBe(true);
});
@@ -166,9 +166,9 @@ describe('Merge request merge checks component', () => {
it('sorts merge checks', async () => {
mountComponent({
mergeabilityChecks: [
- { identifier: 'discussions', status: 'SUCCESS' },
- { identifier: 'discussions', status: 'INACTIVE' },
- { identifier: 'rebase', status: 'FAILED' },
+ { identifier: 'discussions_not_resolved', status: 'SUCCESS' },
+ { identifier: 'status_checks_must_pass', status: 'INACTIVE' },
+ { identifier: 'need_rebase', status: 'FAILED' },
],
});
@@ -184,4 +184,21 @@ describe('Merge request merge checks component', () => {
expect.objectContaining({ status: 'SUCCESS' }),
);
});
+
+ it('does not render check component if no message exists', async () => {
+ mountComponent({
+ mergeabilityChecks: [
+ { identifier: 'discussions_not_resolved', status: 'SUCCESS' },
+ { identifier: 'fakemessage', status: 'FAILED' },
+ ],
+ });
+
+ await waitForPromises();
+
+ await wrapper.findByTestId('widget-toggle').trigger('click');
+
+ const mergeChecks = wrapper.findAllByTestId('merge-check');
+
+ expect(mergeChecks.length).toBe(1);
+ });
});