From be9be41f715aed519f8a64fb1119ff05ec1f7329 Mon Sep 17 00:00:00 2001 From: Siddharth Dungarwal Date: Wed, 23 Jul 2025 13:26:45 +0530 Subject: [PATCH] Remove merge_request_dashboard FF Changelog: removed --- .../components/global_search/store/getters.js | 24 +------ .../super_sidebar/components/user_bar.vue | 3 - app/controllers/concerns/homepage_data.rb | 12 ++-- app/controllers/dashboard_controller.rb | 2 +- app/finders/merge_requests_finder.rb | 1 - app/graphql/graphql_triggers.rb | 2 - .../mutations/user_preferences/update.rb | 6 +- app/graphql/types/current_user_type.rb | 3 +- app/helpers/sidebars_helper.rb | 38 +---------- app/models/user.rb | 11 +-- app/models/user_preference.rb | 2 - app/services/draft_notes/publish_service.rb | 6 +- .../handle_assignees_change_service.rb | 5 +- .../merge_requests/request_review_service.rb | 4 +- .../update_reviewer_state_service.rb | 6 +- app/views/dashboard/merge_requests.html.haml | 20 ++---- .../beta/merge_request_dashboard.yml | 9 --- doc/api/graphql/reference/_index.md | 3 +- doc/tutorials/merge_requests/homepage.md | 8 +-- doc/user/project/merge_requests/homepage.md | 8 +-- .../destroy_requested_changes_service.rb | 8 +-- ee/spec/helpers/sidebars_helper_spec.rb | 12 +--- .../destroy_requested_changes_service_spec.rb | 28 +++----- lib/gitlab/gon_helper.rb | 2 +- .../your_work/menus/merge_requests_menu.rb | 13 +--- spec/controllers/root_controller_spec.rb | 42 +++--------- ...on_focused_merge_request_dashboard_spec.rb | 2 - spec/finders/merge_requests_finder_spec.rb | 18 ----- .../global_search/store/getters_spec.js | 18 ++--- spec/graphql/graphql_triggers_spec.rb | 20 ------ spec/helpers/merge_requests_helper_spec.rb | 10 +-- spec/helpers/sidebars_helper_spec.rb | 10 +-- ...ssignee_or_reviewer_merge_requests_spec.rb | 68 +++++++------------ spec/requests/dashboard_controller_spec.rb | 4 +- .../draft_notes/publish_service_spec.rb | 2 - .../handle_assignees_change_service_spec.rb | 12 +--- .../request_review_service_spec.rb | 14 ++-- .../update_reviewer_state_service_spec.rb | 20 ++---- spec/spec_helper.rb | 3 - 39 files changed, 108 insertions(+), 371 deletions(-) delete mode 100644 config/feature_flags/beta/merge_request_dashboard.yml diff --git a/app/assets/javascripts/super_sidebar/components/global_search/store/getters.js b/app/assets/javascripts/super_sidebar/components/global_search/store/getters.js index 0d61a24f746560..dd7543d0314bed 100644 --- a/app/assets/javascripts/super_sidebar/components/global_search/store/getters.js +++ b/app/assets/javascripts/super_sidebar/components/global_search/store/getters.js @@ -111,31 +111,13 @@ export const defaultSearchOptions = (state, getters) => { }, ]; - const mergeRequestDashboardEnabled = window.gon.features?.mergeRequestDashboard; - let mergeRequests = [ + const mergeRequests = [ { - text: MSG_MR_ASSIGNED_TO_ME, - href: `${getters.scopedMRPath}/?assignee_username=${userName}`, - }, - { - text: MSG_MR_IM_REVIEWER, - href: `${getters.scopedMRPath}/?reviewer_username=${userName}`, - }, - { - text: MSG_MR_IVE_CREATED, - href: `${getters.scopedMRPath}/?author_username=${userName}`, + text: MSG_MR_IM_WORKING_ON, + href: getters.scopedMRPath, }, ]; - if (mergeRequestDashboardEnabled) { - mergeRequests = [ - { - text: MSG_MR_IM_WORKING_ON, - href: getters.scopedMRPath, - }, - ]; - } - return [...(getters.scopedIssuesPath ? issues : []), ...mergeRequests]; }; diff --git a/app/assets/javascripts/super_sidebar/components/user_bar.vue b/app/assets/javascripts/super_sidebar/components/user_bar.vue index 03f0b3a3bd4fe3..10fbeee7379c0f 100644 --- a/app/assets/javascripts/super_sidebar/components/user_bar.vue +++ b/app/assets/javascripts/super_sidebar/components/user_bar.vue @@ -179,9 +179,6 @@ export default { `clientMutationId` | [`String`](#string) | A unique identifier for the client performing the mutation. | | `extensionsMarketplaceOptInStatus` | [`ExtensionsMarketplaceOptInStatus`](#extensionsmarketplaceoptinstatus) | Status of the Web IDE Extension Marketplace opt-in for the user. | | `issuesSort` | [`IssueSort`](#issuesort) | Sort order for issue lists. | -| `mergeRequestDashboardListType` | [`MergeRequestsDashboardListType`](#mergerequestsdashboardlisttype) | Merge request dashboard list rendering type. | | `mergeRequestsSort` | [`MergeRequestSort`](#mergerequestsort) | Sort order for issue lists. | | `organizationGroupsProjectsDisplay` {{< icon name="warning-solid" >}} | [`OrganizationGroupProjectDisplay`](#organizationgroupprojectdisplay) | **Deprecated**: **Status**: Experiment. Introduced in GitLab 17.2. | | `organizationGroupsProjectsSort` {{< icon name="warning-solid" >}} | [`OrganizationGroupProjectSort`](#organizationgroupprojectsort) | **Deprecated**: **Status**: Experiment. Introduced in GitLab 17.2. | @@ -26229,7 +26228,7 @@ four standard [pagination arguments](#pagination-arguments): **Status**: Experiment. {{< /details >}} -Merge requests the current user is an assignee or a reviewer of.Ignored if `merge_request_dashboard` feature flag is disabled. +Merge requests the current user is an assignee or a reviewer of. Returns [`MergeRequestConnection`](#mergerequestconnection). diff --git a/doc/tutorials/merge_requests/homepage.md b/doc/tutorials/merge_requests/homepage.md index 2bfaa51f63614b..121c4dedb568a7 100644 --- a/doc/tutorials/merge_requests/homepage.md +++ b/doc/tutorials/merge_requests/homepage.md @@ -19,16 +19,10 @@ title: 'Tutorial: Understand your merge requests on the Merge requests homepage' - Feature flag `merge_request_dashboard` [enabled](https://gitlab.com/gitlab-org/gitlab/-/issues/480854) on GitLab.com in GitLab 17.9. - Feature flag `mr_dashboard_list_type_toggle` [enabled](https://gitlab.com/gitlab-org/gitlab/-/issues/535244) on GitLab.com in GitLab 18.1. - Feature flag `merge_request_dashboard` [enabled by default](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194999) in GitLab 18.2. +- [Generally available](https://gitlab.com/gitlab-org/gitlab/-/issues/480854) in GitLab 18.4. Feature flag `merge_request_dashboard` removed. {{< /history >}} -{{< alert type="flag" >}} - -The availability of this feature is controlled by a feature flag. -For more information, see the history. - -{{< /alert >}} - This tutorial introduces you to the new user interface for managing merge requests. Whether you're an author awaiting review, or a reviewer providing feedback, this page diff --git a/doc/user/project/merge_requests/homepage.md b/doc/user/project/merge_requests/homepage.md index 3db84b3ed55f94..41d4d9986adc73 100644 --- a/doc/user/project/merge_requests/homepage.md +++ b/doc/user/project/merge_requests/homepage.md @@ -56,16 +56,10 @@ The **Role** view sorts your merge requests by your role in the merge request. - Feature flag `merge_request_dashboard` [enabled](https://gitlab.com/gitlab-org/gitlab/-/issues/480854) on GitLab.com in GitLab 17.9. - Feature flag `mr_dashboard_list_type_toggle` [enabled](https://gitlab.com/gitlab-org/gitlab/-/issues/535244) for GitLab.com in GitLab 18.1. - Feature flag `merge_request_dashboard` [enabled by default](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/194999) in GitLab 18.2. +- [Generally available](https://gitlab.com/gitlab-org/gitlab/-/issues/480854) in GitLab 18.4. Feature flag `merge_request_dashboard` removed. {{< /history >}} -{{< alert type="flag" >}} - -The availability of this feature is controlled by a feature flag. -For more information, see the history. - -{{< /alert >}} - GitLab shows your total **Active** merge requests on the left sidebar on all pages: ![The top left area of the GitLab interface showing totals](img/homepage_totals_v17_9.png) diff --git a/ee/app/services/merge_requests/destroy_requested_changes_service.rb b/ee/app/services/merge_requests/destroy_requested_changes_service.rb index 32c69878d61d25..22ab2135e4e470 100644 --- a/ee/app/services/merge_requests/destroy_requested_changes_service.rb +++ b/ee/app/services/merge_requests/destroy_requested_changes_service.rb @@ -13,12 +13,10 @@ def execute(merge_request) trigger_merge_request_reviewers_updated(merge_request) trigger_merge_request_merge_status_updated(merge_request) - if current_user.merge_request_dashboard_enabled? - invalidate_cache_counts(merge_request, users: merge_request.assignees) - invalidate_cache_counts(merge_request, users: merge_request.reviewers) + invalidate_cache_counts(merge_request, users: merge_request.assignees) + invalidate_cache_counts(merge_request, users: merge_request.reviewers) - current_user.invalidate_merge_request_cache_counts - end + current_user.invalidate_merge_request_cache_counts success else diff --git a/ee/spec/helpers/sidebars_helper_spec.rb b/ee/spec/helpers/sidebars_helper_spec.rb index 1529447243cb37..1cddb0ec9c6d67 100644 --- a/ee/spec/helpers/sidebars_helper_spec.rb +++ b/ee/spec/helpers/sidebars_helper_spec.rb @@ -253,22 +253,12 @@ expect(super_sidebar_context).to match(hash_including({ sign_out_link: '/users/sign_out', issues_dashboard_path: "/dashboard/issues?assignee_username=#{user.username}", - merge_request_dashboard_path: nil, + merge_request_dashboard_path: '/dashboard/merge_requests', todos_dashboard_path: '/dashboard/todos', projects_path: '/dashboard/projects', groups_path: '/dashboard/groups' })) end - - context 'with merge_request_dashboard feature flag enabled' do - before do - stub_feature_flags(merge_request_dashboard: user) - end - - it 'has merge_request_dashboard_path' do - expect(super_sidebar_context[:merge_request_dashboard_path]).to eq('/dashboard/merge_requests') - end - end end end diff --git a/ee/spec/services/merge_requests/destroy_requested_changes_service_spec.rb b/ee/spec/services/merge_requests/destroy_requested_changes_service_spec.rb index d0ea70f3847071..4e53bf4cb01790 100644 --- a/ee/spec/services/merge_requests/destroy_requested_changes_service_spec.rb +++ b/ee/spec/services/merge_requests/destroy_requested_changes_service_spec.rb @@ -86,28 +86,22 @@ let(:action) { result } end - context 'when merge_request_dashboard feature flag is enabled' do - before do - stub_feature_flags(merge_request_dashboard: true) - end + it 'invalidates cache counts for all assignees' do + expect(merge_request.assignees).to all(receive(:invalidate_merge_request_cache_counts)) - it 'invalidates cache counts for all assignees' do - expect(merge_request.assignees).to all(receive(:invalidate_merge_request_cache_counts)) - - expect(result[:status]).to eq :success - end + expect(result[:status]).to eq :success + end - it 'invalidates cache counts for all reviewers' do - expect(merge_request.reviewers).to all(receive(:invalidate_merge_request_cache_counts)) + it 'invalidates cache counts for all reviewers' do + expect(merge_request.reviewers).to all(receive(:invalidate_merge_request_cache_counts)) - expect(result[:status]).to eq :success - end + expect(result[:status]).to eq :success + end - it 'invalidates cache counts for current user' do - expect(user).to receive(:invalidate_merge_request_cache_counts) + it 'invalidates cache counts for current user' do + expect(user).to receive(:invalidate_merge_request_cache_counts) - expect(result[:status]).to eq :success - end + expect(result[:status]).to eq :success end end end diff --git a/lib/gitlab/gon_helper.rb b/lib/gitlab/gon_helper.rb index 57d82f182d0067..1bba949f382230 100644 --- a/lib/gitlab/gon_helper.rb +++ b/lib/gitlab/gon_helper.rb @@ -94,7 +94,7 @@ def add_gon_feature_flags # To be removed with https://gitlab.com/gitlab-org/gitlab/-/issues/399248 push_frontend_feature_flag(:remove_monitor_metrics) push_frontend_feature_flag(:work_item_view_for_issues) - push_frontend_feature_flag(:merge_request_dashboard, current_user, type: :beta) + push_frontend_force_feature_flag(:merge_request_dashboard, true) push_frontend_feature_flag(:new_project_creation_form, current_user, type: :wip) push_frontend_feature_flag(:work_items_client_side_boards, current_user) push_frontend_feature_flag(:glql_work_items, current_user, type: :wip) diff --git a/lib/sidebars/your_work/menus/merge_requests_menu.rb b/lib/sidebars/your_work/menus/merge_requests_menu.rb index d40e24a7a9bcbb..73b424916702f8 100644 --- a/lib/sidebars/your_work/menus/merge_requests_menu.rb +++ b/lib/sidebars/your_work/menus/merge_requests_menu.rb @@ -9,11 +9,7 @@ class MergeRequestsMenu < ::Sidebars::Menu override :link def link - unless context.current_user.merge_request_dashboard_enabled? - assignee_username = @context.current_user.username - end - - merge_requests_dashboard_path(assignee_username: assignee_username) + merge_requests_dashboard_path end override :title @@ -28,12 +24,7 @@ def sprite_icon override :configure_menu_items def configure_menu_items - return false if context.current_user.merge_request_dashboard_enabled? - - add_item(assigned_mrs_menu_item) - add_item(reviewer_mrs_menu_item) - - true + false end override :render? diff --git a/spec/controllers/root_controller_spec.rb b/spec/controllers/root_controller_spec.rb index a3d625e96da1d0..05c0d3cc49c16b 100644 --- a/spec/controllers/root_controller_spec.rb +++ b/spec/controllers/root_controller_spec.rb @@ -200,40 +200,16 @@ expect(response).to render_template 'dashboard/projects/index' end - context 'when the `merge_request_dashboard` feature flag is enabled' do - before do - stub_feature_flags(merge_request_dashboard: true) - end - - it 'passes the correct data to the view' do - get :index - - expect(assigns[:homepage_app_data]).to eq({ - review_requested_path: "/dashboard/merge_requests", - assigned_merge_requests_path: "/dashboard/merge_requests", - assigned_work_items_path: "/dashboard/issues?assignee_username=#{user.username}", - authored_work_items_path: "/dashboard/issues?author_username=#{user.username}", - duo_code_review_bot_username: duo_code_review_bot.username - }) - end - end + it 'passes the correct data to the view' do + get :index - context 'when the `merge_request_dashboard` feature flag is disabled' do - before do - stub_feature_flags(merge_request_dashboard: false) - end - - it 'passes the correct data to the view' do - get :index - - expect(assigns[:homepage_app_data]).to eq({ - review_requested_path: "/dashboard/merge_requests?reviewer_username=#{user.username}", - assigned_merge_requests_path: "/dashboard/merge_requests?assignee_username=#{user.username}", - assigned_work_items_path: "/dashboard/issues?assignee_username=#{user.username}", - authored_work_items_path: "/dashboard/issues?author_username=#{user.username}", - duo_code_review_bot_username: duo_code_review_bot.username - }) - end + expect(assigns[:homepage_app_data]).to eq({ + review_requested_path: "/dashboard/merge_requests", + assigned_merge_requests_path: "/dashboard/merge_requests", + assigned_work_items_path: "/dashboard/issues?assignee_username=#{user.username}", + authored_work_items_path: "/dashboard/issues?author_username=#{user.username}", + duo_code_review_bot_username: duo_code_review_bot.username + }) end end diff --git a/spec/features/dashboard/action_focused_merge_request_dashboard_spec.rb b/spec/features/dashboard/action_focused_merge_request_dashboard_spec.rb index bc8bdc99776a6d..f4217e19d8c172 100644 --- a/spec/features/dashboard/action_focused_merge_request_dashboard_spec.rb +++ b/spec/features/dashboard/action_focused_merge_request_dashboard_spec.rb @@ -35,8 +35,6 @@ end before do - stub_feature_flags(merge_request_dashboard: true) - sign_in(current_user) visit merge_requests_dashboard_path diff --git a/spec/finders/merge_requests_finder_spec.rb b/spec/finders/merge_requests_finder_spec.rb index 0d0f7a63a1b836..8620d71f8a4532 100644 --- a/spec/finders/merge_requests_finder_spec.rb +++ b/spec/finders/merge_requests_finder_spec.rb @@ -761,23 +761,11 @@ def find(label_name) end context 'assignee or reviewer filtering' do - let(:dashboard_flag_enabled) { true } let(:params) { { assigned_user_id: user.id } } let(:expected_mrs) { [merge_request1, merge_request2, merge_request3] } subject { described_class.new(user, params).execute } - before do - stub_feature_flags(merge_request_dashboard: dashboard_flag_enabled) - end - - context 'when merge_request_dashboard feature flag is disabled' do - let(:dashboard_flag_enabled) { false } - let(:expected_mrs) { [merge_request1, merge_request2, merge_request3, merge_request4, merge_request5] } - - it { is_expected.to contain_exactly(*expected_mrs) } - end - it { is_expected.to contain_exactly(*expected_mrs) } end @@ -788,8 +776,6 @@ def find(label_name) subject { described_class.new(user, params).execute } before do - stub_feature_flags(merge_request_dashboard: true) - merge_request1.merge_request_reviewers.update_all(state: :reviewed) end @@ -803,8 +789,6 @@ def find(label_name) subject { described_class.new(user2, params).execute } before do - stub_feature_flags(merge_request_dashboard: true) - merge_request1.merge_request_reviewers.update_all(state: :reviewed) end @@ -818,8 +802,6 @@ def find(label_name) subject { described_class.new(user, params).execute } before do - stub_feature_flags(merge_request_dashboard: true) - merge_request1.merge_request_reviewers.update_all(state: :requested_changes) merge_request3.merge_request_reviewers.update_all(state: :reviewed) end diff --git a/spec/frontend/super_sidebar/components/global_search/store/getters_spec.js b/spec/frontend/super_sidebar/components/global_search/store/getters_spec.js index b69bad0c51cbe3..e5a90d0f41c051 100644 --- a/spec/frontend/super_sidebar/components/global_search/store/getters_spec.js +++ b/spec/frontend/super_sidebar/components/global_search/store/getters_spec.js @@ -269,20 +269,10 @@ describe('Global Search Store Getters', () => { ); }); - describe('when feature flag mergeRequestDashboard is enabled', () => { - beforeEach(() => { - window.gon.features = { mergeRequestDashboard: true }; - }); - - afterEach(() => { - window.gon.features = {}; - }); - - it('returns the correct array', () => { - expect(getters.defaultSearchOptions(state, mockGetters)).toStrictEqual( - MOCK_DASHBOARD_FLAG_ENABLED_SEARCH_OPTIONS, - ); - }); + it('returns the correct array with dashboard options', () => { + expect(getters.defaultSearchOptions(state, mockGetters)).toStrictEqual( + MOCK_DASHBOARD_FLAG_ENABLED_SEARCH_OPTIONS, + ); }); }); diff --git a/spec/graphql/graphql_triggers_spec.rb b/spec/graphql/graphql_triggers_spec.rb index 80a5e1bf6fe181..04f4bf824b869c 100644 --- a/spec/graphql/graphql_triggers_spec.rb +++ b/spec/graphql/graphql_triggers_spec.rb @@ -191,10 +191,6 @@ let_it_be(:user) { create(:user) } let_it_be(:merge_request) { create(:merge_request) } - before do - stub_feature_flags(merge_request_dashboard: true) - end - it 'triggers the user_merge_request_updated subscription' do expect(GitlabSchema.subscriptions).to receive(:trigger).with( :user_merge_request_updated, @@ -204,22 +200,6 @@ described_class.user_merge_request_updated(user, merge_request) end - - describe 'when merge_request_dashboard is disabled' do - before do - stub_feature_flags(merge_request_dashboard: false) - end - - it 'does not trigger the user_merge_request_updated subscription' do - expect(GitlabSchema.subscriptions).not_to receive(:trigger).with( - :user_merge_request_updated, - { user_id: user.id }, - merge_request - ).and_call_original - - described_class.user_merge_request_updated(user, merge_request) - end - end end describe '.ci_pipeline_status_updated' do diff --git a/spec/helpers/merge_requests_helper_spec.rb b/spec/helpers/merge_requests_helper_spec.rb index 9684004d863f1d..51a5ab058a9d0d 100644 --- a/spec/helpers/merge_requests_helper_spec.rb +++ b/spec/helpers/merge_requests_helper_spec.rb @@ -365,17 +365,13 @@ using RSpec::Parameterized::TableSyntax - where(:query_string, :feature_flag_enabled, :search_page, :user_dismissed, :should_show) do - { assignee_user: 'test' } | true | true | false | true - { assignee_user: 'test' } | false | true | false | false - { assignee_user: 'test' } | false | false | false | false - { assignee_user: 'test' } | false | false | true | false - nil | false | false | false | false + where(:query_string, :search_page, :user_dismissed, :should_show) do + { assignee_user: 'test' } | true | false | true + nil | false | false | false end with_them do before do - stub_feature_flags(merge_request_dashboard: feature_flag_enabled) allow(helper).to receive(:current_user).and_return(current_user) allow(helper).to receive(:user_dismissed?) .with(Users::CalloutsHelper::NEW_MR_DASHBOARD_BANNER).and_return(user_dismissed) diff --git a/spec/helpers/sidebars_helper_spec.rb b/spec/helpers/sidebars_helper_spec.rb index 6885766deb9711..f285697790ede4 100644 --- a/spec/helpers/sidebars_helper_spec.rb +++ b/spec/helpers/sidebars_helper_spec.rb @@ -373,14 +373,8 @@ ]) end - context 'when merge_request_dashboard feature flag is enabled' do - before do - stub_feature_flags(merge_request_dashboard: true) - end - - it 'returns nil for merge_request_menu' do - expect(subject[:merge_request_menu]).to be_nil - end + it 'returns nil for merge_request_menu' do + expect(subject[:merge_request_menu]).to be_nil end it 'returns "Create new" menu groups without headers', :use_clean_rails_memory_store_caching do diff --git a/spec/requests/api/graphql/merge_requests/assignee_or_reviewer_merge_requests_spec.rb b/spec/requests/api/graphql/merge_requests/assignee_or_reviewer_merge_requests_spec.rb index 709a7439f2629d..d5ea63c96acc61 100644 --- a/spec/requests/api/graphql/merge_requests/assignee_or_reviewer_merge_requests_spec.rb +++ b/spec/requests/api/graphql/merge_requests/assignee_or_reviewer_merge_requests_spec.rb @@ -39,64 +39,46 @@ def query(params = {}) reviewer_change_requested.merge_request_reviewers[0].update!(state: :requested_changes) end - context 'when merge_request_dashboard feature flag is disabled' do - before do - stub_feature_flags(merge_request_dashboard: false) - end + it do + post_graphql(query, current_user: current_user) + + expect(merge_requests).to contain_exactly( + a_hash_including('id' => merge_request_1.to_global_id.to_s), + a_hash_including('id' => reviewer_change_requested.to_global_id.to_s), + a_hash_including('id' => merge_request_3.to_global_id.to_s) + ) + end + context 'when assigned_review_states argument is sent' do it do - post_graphql(query, current_user: current_user) + post_graphql(query({ assigned_review_states: [:REVIEWED] }), current_user: current_user) - expect(merge_requests).to be_nil + expect(merge_requests).to contain_exactly( + a_hash_including('id' => merge_request_1.to_global_id.to_s) + ) end end - context 'when merge_request_dashboard feature flag is enabled' do - before do - stub_feature_flags(merge_request_dashboard: true) - end - + context 'when reviewer_review_states argument is sent' do it do - post_graphql(query, current_user: current_user) + post_graphql(query({ reviewer_review_states: [:REQUESTED_CHANGES] }), current_user: current_user) expect(merge_requests).to contain_exactly( - a_hash_including('id' => merge_request_1.to_global_id.to_s), a_hash_including('id' => reviewer_change_requested.to_global_id.to_s), a_hash_including('id' => merge_request_3.to_global_id.to_s) ) end + end - context 'when assigned_review_states argument is sent' do - it do - post_graphql(query({ assigned_review_states: [:REVIEWED] }), current_user: current_user) - - expect(merge_requests).to contain_exactly( - a_hash_including('id' => merge_request_1.to_global_id.to_s) - ) - end - end - - context 'when reviewer_review_states argument is sent' do - it do - post_graphql(query({ reviewer_review_states: [:REQUESTED_CHANGES] }), current_user: current_user) - - expect(merge_requests).to contain_exactly( - a_hash_including('id' => reviewer_change_requested.to_global_id.to_s), - a_hash_including('id' => merge_request_3.to_global_id.to_s) - ) - end - end - - context 'when reviewer_review_states and assigned_review_states arguments are sent' do - it do - post_graphql(query({ reviewer_review_states: [:UNREVIEWED], assigned_review_states: [:REQUESTED_CHANGES] }), - current_user: current_user) + context 'when reviewer_review_states and assigned_review_states arguments are sent' do + it do + post_graphql(query({ reviewer_review_states: [:UNREVIEWED], assigned_review_states: [:REQUESTED_CHANGES] }), + current_user: current_user) - expect(merge_requests).to contain_exactly( - a_hash_including('id' => merge_request_1.to_global_id.to_s), - a_hash_including('id' => reviewer_change_requested.to_global_id.to_s) - ) - end + expect(merge_requests).to contain_exactly( + a_hash_including('id' => merge_request_1.to_global_id.to_s), + a_hash_including('id' => reviewer_change_requested.to_global_id.to_s) + ) end end end diff --git a/spec/requests/dashboard_controller_spec.rb b/spec/requests/dashboard_controller_spec.rb index decd0c92b970b0..f7bb9cc37b0001 100644 --- a/spec/requests/dashboard_controller_spec.rb +++ b/spec/requests/dashboard_controller_spec.rb @@ -40,10 +40,8 @@ def request end end - context 'when merge_request_dashboard feature flag is enabled' do + context 'merge request dashboard redirection' do before do - stub_feature_flags(merge_request_dashboard: true) - sign_in current_user end diff --git a/spec/services/draft_notes/publish_service_spec.rb b/spec/services/draft_notes/publish_service_spec.rb index 1be4e6ce1923fb..8d1dc64397de10 100644 --- a/spec/services/draft_notes/publish_service_spec.rb +++ b/spec/services/draft_notes/publish_service_spec.rb @@ -164,8 +164,6 @@ def publish(draft: nil) it 'invalidates cache counts' do expect(merge_request.assignees).to all(receive(:invalidate_merge_request_cache_counts)) - stub_feature_flags(merge_request_dashboard: true) - publish end diff --git a/spec/services/merge_requests/handle_assignees_change_service_spec.rb b/spec/services/merge_requests/handle_assignees_change_service_spec.rb index c82e3dab15000e..9c130b6362c931 100644 --- a/spec/services/merge_requests/handle_assignees_change_service_spec.rb +++ b/spec/services/merge_requests/handle_assignees_change_service_spec.rb @@ -101,16 +101,10 @@ def execute execute end - context 'when merge_request_dashboard feature flag is enabled' do - before do - stub_feature_flags(merge_request_dashboard: true) - end - - it 'invalidates cache counts' do - expect(merge_request.assignees).to all(receive(:invalidate_merge_request_cache_counts)) + it 'invalidates cache counts' do + expect(merge_request.assignees).to all(receive(:invalidate_merge_request_cache_counts)) - execute - end + execute end it 'invalidates cache counts for old assignees' do diff --git a/spec/services/merge_requests/request_review_service_spec.rb b/spec/services/merge_requests/request_review_service_spec.rb index c06eeabcbdab21..b039431777c171 100644 --- a/spec/services/merge_requests/request_review_service_spec.rb +++ b/spec/services/merge_requests/request_review_service_spec.rb @@ -94,17 +94,11 @@ service.execute(merge_request, user) end - context 'when merge_request_dashboard feature flag is enabled' do - before do - stub_feature_flags(merge_request_dashboard: true) - end - - it 'invalidates cache counts' do - expect(user).to receive(:invalidate_merge_request_cache_counts) - expect(current_user).to receive(:invalidate_merge_request_cache_counts) + it 'invalidates cache counts' do + expect(user).to receive(:invalidate_merge_request_cache_counts) + expect(current_user).to receive(:invalidate_merge_request_cache_counts) - service.execute(merge_request, user) - end + service.execute(merge_request, user) end end end diff --git a/spec/services/merge_requests/update_reviewer_state_service_spec.rb b/spec/services/merge_requests/update_reviewer_state_service_spec.rb index 920c2fb952185e..4d4c004c79ccaa 100644 --- a/spec/services/merge_requests/update_reviewer_state_service_spec.rb +++ b/spec/services/merge_requests/update_reviewer_state_service_spec.rb @@ -85,22 +85,16 @@ result end - context 'when merge_request_dashboard feature flag is enabled' do - before do - stub_feature_flags(merge_request_dashboard: true) - end - - it 'invalidates cache counts for all assignees' do - expect(merge_request.assignees).to all(receive(:invalidate_merge_request_cache_counts)) + it 'invalidates cache counts for all assignees' do + expect(merge_request.assignees).to all(receive(:invalidate_merge_request_cache_counts)) - expect(result[:status]).to eq :success - end + expect(result[:status]).to eq :success + end - it 'invalidates cache counts for current user' do - expect(current_user).to receive(:invalidate_merge_request_cache_counts) + it 'invalidates cache counts for current user' do + expect(current_user).to receive(:invalidate_merge_request_cache_counts) - expect(result[:status]).to eq :success - end + expect(result[:status]).to eq :success end context 'when reviewer has approved' do diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 0aae0985334980..68ad40f26e6b56 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -327,9 +327,6 @@ # Disable suspending ClickHouse data ingestion workers stub_feature_flags(suspend_click_house_data_ingestion: false) - # Experimental merge request dashboard - stub_feature_flags(merge_request_dashboard: false) - # This feature flag allows enabling self-hosted features on Staging Ref: https://gitlab.com/gitlab-org/gitlab/-/issues/497784 stub_feature_flags(allow_self_hosted_features_for_com: false) -- GitLab