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:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-05-13 00:10:13 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2021-05-13 00:10:13 +0300
commitd30a9499faf30d5f5424a52b2df286c724e253d1 (patch)
tree8591a15d35e51a40521d255efdd75d2c89a84326 /spec/features/frequently_visited_projects_and_groups_spec.rb
parent3c3b7c12a0955679626545248aa2aa347d6d001d (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/features/frequently_visited_projects_and_groups_spec.rb')
-rw-r--r--spec/features/frequently_visited_projects_and_groups_spec.rb76
1 files changed, 52 insertions, 24 deletions
diff --git a/spec/features/frequently_visited_projects_and_groups_spec.rb b/spec/features/frequently_visited_projects_and_groups_spec.rb
index 6c25afdf6d4..9110c7ad65a 100644
--- a/spec/features/frequently_visited_projects_and_groups_spec.rb
+++ b/spec/features/frequently_visited_projects_and_groups_spec.rb
@@ -5,45 +5,73 @@ require 'spec_helper'
RSpec.describe 'Frequently visited items', :js do
let_it_be(:user) { create(:user) }
- before do
- stub_feature_flags(combined_menu: false)
+ shared_examples 'combined_menu: feature flag examples' do
+ before do
+ sign_in(user)
+ end
- sign_in(user)
- end
+ context 'for projects' do
+ let_it_be(:project) { create(:project, :public) }
- context 'for projects' do
- let_it_be(:project) { create(:project, :public) }
+ it 'increments localStorage counter when visiting the project' do
+ pending_on_combined_menu_flag
- it 'increments localStorage counter when visiting the project' do
- visit project_path(project)
+ visit project_path(project)
- frequent_projects = nil
+ frequent_projects = nil
- wait_for('localStorage frequent-projects') do
- frequent_projects = page.evaluate_script("localStorage['#{user.username}/frequent-projects']")
+ wait_for('localStorage frequent-projects') do
+ frequent_projects = page.evaluate_script("localStorage['#{user.username}/frequent-projects']")
- frequent_projects.present?
- end
+ frequent_projects.present?
+ end
- expect(Gitlab::Json.parse(frequent_projects)).to contain_exactly(a_hash_including('id' => project.id, 'frequency' => 1))
+ expect(Gitlab::Json.parse(frequent_projects)).to contain_exactly(a_hash_including('id' => project.id, 'frequency' => 1))
+ end
end
- end
- context 'for groups' do
- let_it_be(:group) { create(:group, :public) }
+ context 'for groups' do
+ let_it_be(:group) { create(:group, :public) }
- it 'increments localStorage counter when visiting the group' do
- visit group_path(group)
+ it 'increments localStorage counter when visiting the group' do
+ pending_on_combined_menu_flag
- frequent_groups = nil
+ visit group_path(group)
- wait_for('localStorage frequent-groups') do
- frequent_groups = page.evaluate_script("localStorage['#{user.username}/frequent-groups']")
+ frequent_groups = nil
- frequent_groups.present?
+ wait_for('localStorage frequent-groups') do
+ frequent_groups = page.evaluate_script("localStorage['#{user.username}/frequent-groups']")
+
+ frequent_groups.present?
+ end
+
+ expect(Gitlab::Json.parse(frequent_groups)).to contain_exactly(a_hash_including('id' => group.id, 'frequency' => 1))
end
+ end
+ end
- expect(Gitlab::Json.parse(frequent_groups)).to contain_exactly(a_hash_including('id' => group.id, 'frequency' => 1))
+ context 'with combined_menu: feature flag on' do
+ let(:needs_rewrite_for_combined_menu_flag_on) { true }
+
+ before do
+ stub_feature_flags(combined_menu: true)
end
+
+ it_behaves_like 'combined_menu: feature flag examples'
+ end
+
+ context 'with combined_menu feature flag off' do
+ let(:needs_rewrite_for_combined_menu_flag_on) { false }
+
+ before do
+ stub_feature_flags(combined_menu: false)
+ end
+
+ it_behaves_like 'combined_menu: feature flag examples'
+ end
+
+ def pending_on_combined_menu_flag
+ pending 'https://gitlab.com/gitlab-org/gitlab/-/merge_requests/56587' if needs_rewrite_for_combined_menu_flag_on
end
end