diff options
author | Luke Bennett <lbennett@gitlab.com> | 2018-12-03 15:05:29 +0000 |
---|---|---|
committer | Luke Bennett <lbennett@gitlab.com> | 2018-12-05 22:46:19 +0000 |
commit | 82ea1129e72230cf8991c05c47c7fe4dff24122d (patch) | |
tree | 1fb8d5ee727d0d2dc8031ef66b3ca79e518fe6ed | |
parent | 2b2f93698b4f479d673067caa384b604732852e4 (diff) | |
download | gitlab-ce-ce-8684-show_gold_trial-fails-when-not-logged-in.tar.gz |
Fix error from gold trial callout on explore page when not logged ince-8684-show_gold_trial-fails-when-not-logged-in
Check that there is a current user before checking if the current user
has a namespace with gold or a trial
4 files changed, 53 insertions, 18 deletions
diff --git a/ee/changelogs/unreleased/8684-show_gold_trial-fails-when-not-logged-in.yml b/ee/changelogs/unreleased/8684-show_gold_trial-fails-when-not-logged-in.yml new file mode 100644 index 00000000000..37ed475518b --- /dev/null +++ b/ee/changelogs/unreleased/8684-show_gold_trial-fails-when-not-logged-in.yml @@ -0,0 +1,5 @@ +--- +title: Fix error on explore page when logged out due to gold trial callout +merge_request: 8674 +author: +type: fixed diff --git a/spec/features/dashboard/root_explore_spec.rb b/spec/features/dashboard/root_explore_spec.rb new file mode 100644 index 00000000000..1f1b85c61c2 --- /dev/null +++ b/spec/features/dashboard/root_explore_spec.rb @@ -0,0 +1,31 @@ +require 'spec_helper' + +describe 'Root explore' do + set(:public_project) { create(:project, :public) } + set(:archived_project) { create(:project, :archived) } + set(:internal_project) { create(:project, :internal) } + set(:private_project) { create(:project, :private) } + + before do + allow(Gitlab).to receive(:com?).and_return(true) + end + + context 'when logged in' do + set(:user) { create(:user) } + + before do + sign_in(user) + visit explore_projects_path + end + + include_examples 'shows public and internal projects' + end + + context 'when not logged in' do + before do + visit explore_projects_path + end + + include_examples 'shows public projects' + end +end diff --git a/spec/features/explore/user_explores_projects_spec.rb b/spec/features/explore/user_explores_projects_spec.rb index 6ac9497b024..c724c3d17f8 100644 --- a/spec/features/explore/user_explores_projects_spec.rb +++ b/spec/features/explore/user_explores_projects_spec.rb @@ -6,24 +6,6 @@ describe 'User explores projects' do set(:private_project) { create(:project, :private) } set(:public_project) { create(:project, :public) } - shared_examples_for 'shows public projects' do - it 'shows projects' do - expect(page).to have_content(public_project.title) - expect(page).not_to have_content(internal_project.title) - expect(page).not_to have_content(private_project.title) - expect(page).not_to have_content(archived_project.title) - end - end - - shared_examples_for 'shows public and internal projects' do - it 'shows projects' do - expect(page).to have_content(public_project.title) - expect(page).to have_content(internal_project.title) - expect(page).not_to have_content(private_project.title) - expect(page).not_to have_content(archived_project.title) - end - end - context 'when not signed in' do context 'when viewing public projects' do before do diff --git a/spec/support/shared_examples/project_list_shared_examples.rb b/spec/support/shared_examples/project_list_shared_examples.rb new file mode 100644 index 00000000000..24bd3a324c4 --- /dev/null +++ b/spec/support/shared_examples/project_list_shared_examples.rb @@ -0,0 +1,17 @@ +shared_examples 'shows public projects' do + it 'shows projects' do + expect(page).to have_content(public_project.title) + expect(page).not_to have_content(internal_project.title) + expect(page).not_to have_content(private_project.title) + expect(page).not_to have_content(archived_project.title) + end +end + +shared_examples 'shows public and internal projects' do + it 'shows projects' do + expect(page).to have_content(public_project.title) + expect(page).to have_content(internal_project.title) + expect(page).not_to have_content(private_project.title) + expect(page).not_to have_content(archived_project.title) + end +end |