diff options
Diffstat (limited to 'spec/frontend/sidebar/components/reviewers/uncollapsed_reviewer_list_spec.js')
-rw-r--r-- | spec/frontend/sidebar/components/reviewers/uncollapsed_reviewer_list_spec.js | 56 |
1 files changed, 26 insertions, 30 deletions
diff --git a/spec/frontend/sidebar/components/reviewers/uncollapsed_reviewer_list_spec.js b/spec/frontend/sidebar/components/reviewers/uncollapsed_reviewer_list_spec.js index 128ef69e5f1..037b56d9904 100644 --- a/spec/frontend/sidebar/components/reviewers/uncollapsed_reviewer_list_spec.js +++ b/spec/frontend/sidebar/components/reviewers/uncollapsed_reviewer_list_spec.js @@ -1,4 +1,3 @@ -import { nextTick } from 'vue'; import { shallowMount } from '@vue/test-utils'; import { TEST_HOST } from 'helpers/test_constants'; import ReviewerAvatarLink from '~/sidebar/components/reviewers/reviewer_avatar_link.vue'; @@ -23,8 +22,9 @@ describe('UncollapsedReviewerList component', () => { let wrapper; const findAllRerequestButtons = () => wrapper.findAll('[data-testid="re-request-button"]'); - const findAllRerequestSuccessIcons = () => wrapper.findAll('[data-testid="re-request-success"]'); - const findAllReviewerApprovalIcons = () => wrapper.findAll('[data-testid="re-approved"]'); + const findAllReviewerApprovalIcons = () => wrapper.findAll('[data-testid="approved"]'); + const findAllReviewedNotApprovedIcons = () => + wrapper.findAll('[data-testid="reviewed-not-approved"]'); const findAllReviewerAvatarLinks = () => wrapper.findAllComponents(ReviewerAvatarLink); function createComponent(props = {}, glFeatures = {}) { @@ -42,13 +42,6 @@ describe('UncollapsedReviewerList component', () => { }); } - const callRerequestCallback = async () => { - const payload = wrapper.emitted('request-review')[0][0]; - // Call payload which is normally called by a parent component - payload.callback(payload.userId, true); - await nextTick(); - }; - describe('single reviewer', () => { const user = userDataMock(); @@ -71,13 +64,6 @@ describe('UncollapsedReviewerList component', () => { expect(findAllRerequestButtons().at(0).props('loading')).toBe(true); }); - - it('renders re-request success icon', async () => { - await findAllRerequestButtons().at(0).vm.$emit('click'); - await callRerequestCallback(); - - expect(findAllRerequestSuccessIcons().at(0).exists()).toBe(true); - }); }); describe('multiple reviewers', () => { @@ -92,20 +78,32 @@ describe('UncollapsedReviewerList component', () => { approved: true, }, }; + const user3 = { + ...user, + id: 3, + name: 'lizabeth-wilderman', + username: 'lizabeth-wilderman', + mergeRequestInteraction: { + ...user.mergeRequestInteraction, + approved: false, + reviewed: true, + }, + }; beforeEach(() => { createComponent({ - users: [user, user2], + users: [user, user2, user3], }); }); - it('has both users', () => { - expect(findAllReviewerAvatarLinks()).toHaveLength(2); + it('has three users', () => { + expect(findAllReviewerAvatarLinks()).toHaveLength(3); }); - it('shows both users with avatar, and author name', () => { + it('shows all users with avatar, and author name', () => { expect(wrapper.text()).toContain(user.name); expect(wrapper.text()).toContain(user2.name); + expect(wrapper.text()).toContain(user3.name); }); it('renders approval icon', () => { @@ -118,21 +116,19 @@ describe('UncollapsedReviewerList component', () => { expect(icon.attributes('title')).toBe('Approved by @hello-world'); }); + it('shows that lizabeth-wilderman reviewed but did not approve', () => { + const icon = findAllReviewedNotApprovedIcons().at(1); + + expect(icon.attributes('title')).toBe('Reviewed by @lizabeth-wilderman but not yet approved'); + }); + it('renders re-request loading icon', async () => { await findAllRerequestButtons().at(1).vm.$emit('click'); const allRerequestButtons = findAllRerequestButtons(); - expect(allRerequestButtons).toHaveLength(2); + expect(allRerequestButtons).toHaveLength(3); expect(allRerequestButtons.at(1).props('loading')).toBe(true); }); - - it('renders re-request success icon', async () => { - await findAllRerequestButtons().at(1).vm.$emit('click'); - await callRerequestCallback(); - - expect(findAllRerequestButtons()).toHaveLength(1); - expect(findAllRerequestSuccessIcons()).toHaveLength(1); - }); }); }); |