Commit d9958bf6 authored by Bob Van Landuyt's avatar Bob Van Landuyt

Merge branch 'ajk-starred-spec' into 'master'

Tidy up starred projects spec

See merge request gitlab-org/gitlab!50463
parents e406f394 212db76e
...@@ -17,7 +17,13 @@ RSpec.describe 'Getting starredProjects of the user' do ...@@ -17,7 +17,13 @@ RSpec.describe 'Getting starredProjects of the user' do
let_it_be(:user, reload: true) { create(:user) } let_it_be(:user, reload: true) { create(:user) }
let(:user_fields) { 'starredProjects { nodes { id } }' } let(:user_fields) { 'starredProjects { nodes { id } }' }
let(:starred_projects) { graphql_data_at(:user, :starred_projects, :nodes) } let(:current_user) { nil }
let(:starred_projects) do
post_graphql(query, current_user: current_user)
graphql_data_at(:user, :starred_projects, :nodes)
end
before do before do
project_b.add_reporter(user) project_b.add_reporter(user)
...@@ -26,11 +32,13 @@ RSpec.describe 'Getting starredProjects of the user' do ...@@ -26,11 +32,13 @@ RSpec.describe 'Getting starredProjects of the user' do
user.toggle_star(project_a) user.toggle_star(project_a)
user.toggle_star(project_b) user.toggle_star(project_b)
user.toggle_star(project_c) user.toggle_star(project_c)
post_graphql(query)
end end
it_behaves_like 'a working graphql query' it_behaves_like 'a working graphql query' do
before do
post_graphql(query)
end
end
it 'found only public project' do it 'found only public project' do
expect(starred_projects).to contain_exactly( expect(starred_projects).to contain_exactly(
...@@ -41,10 +49,6 @@ RSpec.describe 'Getting starredProjects of the user' do ...@@ -41,10 +49,6 @@ RSpec.describe 'Getting starredProjects of the user' do
context 'the current user is the user' do context 'the current user is the user' do
let(:current_user) { user } let(:current_user) { user }
before do
post_graphql(query, current_user: current_user)
end
it 'found all projects' do it 'found all projects' do
expect(starred_projects).to contain_exactly( expect(starred_projects).to contain_exactly(
a_hash_including('id' => global_id_of(project_a)), a_hash_including('id' => global_id_of(project_a)),
...@@ -56,11 +60,10 @@ RSpec.describe 'Getting starredProjects of the user' do ...@@ -56,11 +60,10 @@ RSpec.describe 'Getting starredProjects of the user' do
context 'the current user is a member of a private project the user starred' do context 'the current user is a member of a private project the user starred' do
let_it_be(:other_user) { create(:user) } let_it_be(:other_user) { create(:user) }
let(:current_user) { other_user }
before do before do
project_b.add_reporter(other_user) project_b.add_reporter(other_user)
post_graphql(query, current_user: other_user)
end end
it 'finds public and member projects' do it 'finds public and member projects' do
...@@ -74,7 +77,6 @@ RSpec.describe 'Getting starredProjects of the user' do ...@@ -74,7 +77,6 @@ RSpec.describe 'Getting starredProjects of the user' do
context 'the user has a private profile' do context 'the user has a private profile' do
before do before do
user.update!(private_profile: true) user.update!(private_profile: true)
post_graphql(query, current_user: current_user)
end end
context 'the current user does not have access to view the private profile of the user' do context 'the current user does not have access to view the private profile of the user' do
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment