From 935718e210c05002c30a69ca5d3e250bb9627809 Mon Sep 17 00:00:00 2001 From: Phil Hughes Date: Wed, 1 Jun 2022 16:03:51 +0100 Subject: [PATCH 1/8] Added finish review dropdown Adds the ability to add a comment when submitting a review on a merge request. Closes https://gitlab.com/gitlab-org/gitlab/-/issues/244044 --- .../components/drafts_count.vue | 9 +- .../components/preview_dropdown.vue | 5 + .../batch_comments/components/review_bar.vue | 7 +- .../components/submit_dropdown.vue | 98 +++++++ .../batch_comments/services/drafts_service.js | 4 +- .../stores/modules/batch_comments/actions.js | 4 +- .../vue_shared/components/markdown/field.vue | 7 +- .../page_bundles/merge_requests.scss | 20 ++ .../merge_requests/drafts_controller.rb | 13 + .../projects/merge_requests_controller.rb | 1 + .../development/mr_review_submit_comment.yml | 8 + locale/gitlab.pot | 6 + .../merge_request/batch_comments_spec.rb | 269 +++++++++--------- 13 files changed, 309 insertions(+), 142 deletions(-) create mode 100644 app/assets/javascripts/batch_comments/components/submit_dropdown.vue create mode 100644 config/feature_flags/development/mr_review_submit_comment.yml diff --git a/app/assets/javascripts/batch_comments/components/drafts_count.vue b/app/assets/javascripts/batch_comments/components/drafts_count.vue index 61718b766d834d..0cd093823bc028 100644 --- a/app/assets/javascripts/batch_comments/components/drafts_count.vue +++ b/app/assets/javascripts/batch_comments/components/drafts_count.vue @@ -6,13 +6,20 @@ export default { components: { GlBadge, }, + props: { + variant: { + type: String, + required: false, + default: 'info', + }, + }, computed: { ...mapGetters('batchComments', ['draftsCount']), }, };
- +
- + + + +
- -
+ +
{{ __('Submit review') }}
- + diff --git a/spec/frontend/batch_comments/components/submit_dropdown_spec.js b/spec/frontend/batch_comments/components/submit_dropdown_spec.js index 884b30fe995629..4f5ff797230d6c 100644 --- a/spec/frontend/batch_comments/components/submit_dropdown_spec.js +++ b/spec/frontend/batch_comments/components/submit_dropdown_spec.js @@ -36,7 +36,7 @@ function factory() { const findCommentTextarea = () => wrapper.findByTestId('comment-textarea'); const findSubmitButton = () => wrapper.findByTestId('submit-review-button'); -const findForm = () => wrapper.findByTestId('submit-form'); +const findForm = () => wrapper.findByTestId('submit-gl-form'); describe('Batch comments submit dropdown', () => { afterEach(() => { @@ -48,7 +48,7 @@ describe('Batch comments submit dropdown', () => { findCommentTextarea().setValue('Hello world'); - await findForm().trigger('submit'); + await findForm().vm.$emit('submit', { preventDefault: jest.fn() }); expect(publishReview).toHaveBeenCalledWith(expect.anything(), { noteable_type: 'merge_request', @@ -62,7 +62,7 @@ describe('Batch comments submit dropdown', () => { findCommentTextarea().setValue('Hello world'); - await findForm().trigger('submit'); + await findForm().vm.$emit('submit', { preventDefault: jest.fn() }); expect(findSubmitButton().props('loading')).toBe(true); }); -- GitLab