Commit f4736531 authored by Vitali Tatarintev's avatar Vitali Tatarintev

Replace set to let_it_be in spec

Get rids of `set` in specs
parent 085a1a2f
...@@ -5,10 +5,10 @@ require 'spec_helper' ...@@ -5,10 +5,10 @@ require 'spec_helper'
describe Projects::AutocompleteSourcesController, '(JavaScript fixtures)', type: :controller do describe Projects::AutocompleteSourcesController, '(JavaScript fixtures)', type: :controller do
include JavaScriptFixturesHelpers include JavaScriptFixturesHelpers
set(:admin) { create(:admin) } let_it_be(:admin) { create(:admin) }
set(:group) { create(:group, name: 'frontend-fixtures') } let_it_be(:group) { create(:group, name: 'frontend-fixtures') }
set(:project) { create(:project, namespace: group, path: 'autocomplete-sources-project') } let_it_be(:project) { create(:project, namespace: group, path: 'autocomplete-sources-project') }
set(:issue) { create(:issue, project: project) } let_it_be(:issue) { create(:issue, project: project) }
before(:all) do before(:all) do
clean_frontend_fixtures('autocomplete_sources/') clean_frontend_fixtures('autocomplete_sources/')
......
...@@ -5,8 +5,8 @@ require 'spec_helper' ...@@ -5,8 +5,8 @@ require 'spec_helper'
describe Projects::CommitController, '(JavaScript fixtures)', type: :controller do describe Projects::CommitController, '(JavaScript fixtures)', type: :controller do
include JavaScriptFixturesHelpers include JavaScriptFixturesHelpers
set(:project) { create(:project, :repository) } let_it_be(:project) { create(:project, :repository) }
set(:user) { create(:user) } let_it_be(:user) { create(:user) }
let(:commit) { project.commit("master") } let(:commit) { project.commit("master") }
render_views render_views
......
...@@ -13,9 +13,9 @@ describe Notify do ...@@ -13,9 +13,9 @@ describe Notify do
let(:current_user_sanitized) { 'www_example_com' } let(:current_user_sanitized) { 'www_example_com' }
let_it_be(:user) { create(:user) } let_it_be(:user, reload: true) { create(:user) }
let_it_be(:current_user) { create(:user, email: "current@email.com", name: 'www.example.com') } let_it_be(:current_user, reload: true) { create(:user, email: "current@email.com", name: 'www.example.com') }
let_it_be(:assignee) { create(:user, email: 'assignee@example.com', name: 'John Doe') } let_it_be(:assignee, reload: true) { create(:user, email: 'assignee@example.com', name: 'John Doe') }
let_it_be(:merge_request) do let_it_be(:merge_request) do
create(:merge_request, source_project: project, create(:merge_request, source_project: project,
......
...@@ -3,15 +3,14 @@ ...@@ -3,15 +3,14 @@
require 'spec_helper' require 'spec_helper'
describe API::Internal::Base do describe API::Internal::Base do
set(:user) { create(:user) } let_it_be(:user, reload: true) { create(:user) }
let_it_be(:project, reload: true) { create(:project, :repository, :wiki_repo) }
let_it_be(:personal_snippet) { create(:personal_snippet, :repository, author: user) }
let_it_be(:project_snippet) { create(:project_snippet, :repository, author: user, project: project) }
let(:key) { create(:key, user: user) } let(:key) { create(:key, user: user) }
set(:project) { create(:project, :repository, :wiki_repo) }
let(:secret_token) { Gitlab::Shell.secret_token } let(:secret_token) { Gitlab::Shell.secret_token }
let(:gl_repository) { "project-#{project.id}" } let(:gl_repository) { "project-#{project.id}" }
let(:reference_counter) { double('ReferenceCounter') } let(:reference_counter) { double('ReferenceCounter') }
let_it_be(:personal_snippet) { create(:personal_snippet, :repository, author: user) }
let_it_be(:project_snippet) { create(:project_snippet, :repository, author: user, project: project) }
let(:snippet_changes) { "#{TestEnv::BRANCH_SHA['snippet/single-file']} #{TestEnv::BRANCH_SHA['snippet/edit-file']} refs/heads/snippet/edit-file" } let(:snippet_changes) { "#{TestEnv::BRANCH_SHA['snippet/single-file']} #{TestEnv::BRANCH_SHA['snippet/edit-file']} refs/heads/snippet/edit-file" }
describe "GET /internal/check" do describe "GET /internal/check" do
......
...@@ -6,9 +6,9 @@ describe 'Git LFS API and storage' do ...@@ -6,9 +6,9 @@ describe 'Git LFS API and storage' do
include ProjectForksHelper include ProjectForksHelper
include WorkhorseHelpers include WorkhorseHelpers
set(:project) { create(:project, :repository) } let_it_be(:project, reload: true) { create(:project, :repository) }
set(:other_project) { create(:project, :repository) } let_it_be(:other_project) { create(:project, :repository) }
set(:user) { create(:user) } let_it_be(:user) { create(:user) }
let!(:lfs_object) { create(:lfs_object, :with_file) } let!(:lfs_object) { create(:lfs_object, :with_file) }
let(:headers) do let(:headers) do
......
...@@ -5,9 +5,9 @@ require 'spec_helper' ...@@ -5,9 +5,9 @@ require 'spec_helper'
describe Metrics::Dashboard::UpdateDashboardService, :use_clean_rails_memory_store_caching do describe Metrics::Dashboard::UpdateDashboardService, :use_clean_rails_memory_store_caching do
include MetricsDashboardHelpers include MetricsDashboardHelpers
set(:user) { create(:user) } let_it_be(:user) { create(:user) }
set(:project) { create(:project, :repository) } let_it_be(:project) { create(:project, :repository) }
set(:environment) { create(:environment, project: project) } let_it_be(:environment) { create(:environment, project: project) }
describe '#execute' do describe '#execute' do
subject(:service_call) { described_class.new(project, user, params).execute } subject(:service_call) { described_class.new(project, user, params).execute }
......
# frozen_string_literal: true # frozen_string_literal: true
RSpec.shared_context 'IssuesFinder context' do RSpec.shared_context 'IssuesFinder context' do
set(:user) { create(:user) } let_it_be(:user) { create(:user) }
set(:user2) { create(:user) } let_it_be(:user2) { create(:user) }
set(:group) { create(:group) } let_it_be(:group) { create(:group) }
set(:subgroup) { create(:group, parent: group) } let_it_be(:subgroup) { create(:group, parent: group) }
set(:project1) { create(:project, group: group) } let_it_be(:project1, reload: true) { create(:project, group: group) }
set(:project2) { create(:project) } let_it_be(:project2, reload: true) { create(:project) }
set(:project3) { create(:project, group: subgroup) } let_it_be(:project3, reload: true) { create(:project, group: subgroup) }
set(:milestone) { create(:milestone, project: project1) } let_it_be(:milestone) { create(:milestone, project: project1) }
set(:label) { create(:label, project: project2) } let_it_be(:label) { create(:label, project: project2) }
set(:label2) { create(:label, project: project2) } let_it_be(:label2) { create(:label, project: project2) }
set(:issue1) { create(:issue, author: user, assignees: [user], project: project1, milestone: milestone, title: 'gitlab', created_at: 1.week.ago, updated_at: 1.week.ago) } let_it_be(:issue1, reload: true) { create(:issue, author: user, assignees: [user], project: project1, milestone: milestone, title: 'gitlab', created_at: 1.week.ago, updated_at: 1.week.ago) }
set(:issue2) { create(:issue, author: user, assignees: [user], project: project2, description: 'gitlab', created_at: 1.week.from_now, updated_at: 1.week.from_now) } let_it_be(:issue2, reload: true) { create(:issue, author: user, assignees: [user], project: project2, description: 'gitlab', created_at: 1.week.from_now, updated_at: 1.week.from_now) }
set(:issue3) { create(:issue, author: user2, assignees: [user2], project: project2, title: 'tanuki', description: 'tanuki', created_at: 2.weeks.from_now, updated_at: 2.weeks.from_now) } let_it_be(:issue3, reload: true) { create(:issue, author: user2, assignees: [user2], project: project2, title: 'tanuki', description: 'tanuki', created_at: 2.weeks.from_now, updated_at: 2.weeks.from_now) }
set(:issue4) { create(:issue, project: project3) } let_it_be(:issue4, reload: true) { create(:issue, project: project3) }
set(:award_emoji1) { create(:award_emoji, name: 'thumbsup', user: user, awardable: issue1) } let_it_be(:award_emoji1) { create(:award_emoji, name: 'thumbsup', user: user, awardable: issue1) }
set(:award_emoji2) { create(:award_emoji, name: 'thumbsup', user: user2, awardable: issue2) } let_it_be(:award_emoji2) { create(:award_emoji, name: 'thumbsup', user: user2, awardable: issue2) }
set(:award_emoji3) { create(:award_emoji, name: 'thumbsdown', user: user, awardable: issue3) } let_it_be(:award_emoji3) { create(:award_emoji, name: 'thumbsdown', user: user, awardable: issue3) }
end end
RSpec.shared_context 'IssuesFinder#execute context' do RSpec.shared_context 'IssuesFinder#execute context' do
......
...@@ -13,15 +13,14 @@ RSpec.shared_context 'MergeRequestsFinder multiple projects with merge requests ...@@ -13,15 +13,14 @@ RSpec.shared_context 'MergeRequestsFinder multiple projects with merge requests
end end
end end
set(:user) { create(:user) } let_it_be(:user) { create(:user) }
set(:user2) { create(:user) } let_it_be(:user2) { create(:user) }
let_it_be(:group) { create(:group) }
set(:group) { create(:group) } let_it_be(:subgroup) { create(:group, parent: group) }
set(:subgroup) { create(:group, parent: group) } let_it_be(:project1, reload: true) do
set(:project1) do
allow_gitaly_n_plus_1 { create(:project, :public, group: group) } allow_gitaly_n_plus_1 { create(:project, :public, group: group) }
end end
# We cannot use `set` here otherwise we get: # We cannot use `let_it_be` here otherwise we get:
# Failure/Error: allow(RepositoryForkWorker).to receive(:perform_async).and_return(true) # Failure/Error: allow(RepositoryForkWorker).to receive(:perform_async).and_return(true)
# The use of doubles or partial doubles from rspec-mocks outside of the per-test lifecycle is not supported. # The use of doubles or partial doubles from rspec-mocks outside of the per-test lifecycle is not supported.
let(:project2) do let(:project2) do
...@@ -36,13 +35,13 @@ RSpec.shared_context 'MergeRequestsFinder multiple projects with merge requests ...@@ -36,13 +35,13 @@ RSpec.shared_context 'MergeRequestsFinder multiple projects with merge requests
end end
end end
end end
set(:project4) do let_it_be(:project4, reload: true) do
allow_gitaly_n_plus_1 { create(:project, :repository, group: subgroup) } allow_gitaly_n_plus_1 { create(:project, :repository, group: subgroup) }
end end
set(:project5) do let_it_be(:project5, reload: true) do
allow_gitaly_n_plus_1 { create(:project, group: subgroup) } allow_gitaly_n_plus_1 { create(:project, group: subgroup) }
end end
set(:project6) do let_it_be(:project6, reload: true) do
allow_gitaly_n_plus_1 { create(:project, group: subgroup) } allow_gitaly_n_plus_1 { create(:project, group: subgroup) }
end end
......
# frozen_string_literal: true # frozen_string_literal: true
RSpec.shared_context 'UsersFinder#execute filter by project context' do RSpec.shared_context 'UsersFinder#execute filter by project context' do
set(:normal_user) { create(:user, username: 'johndoe') } let_it_be(:normal_user) { create(:user, username: 'johndoe') }
set(:blocked_user) { create(:user, :blocked, username: 'notsorandom') } let_it_be(:blocked_user) { create(:user, :blocked, username: 'notsorandom') }
set(:external_user) { create(:user, :external) } let_it_be(:external_user) { create(:user, :external) }
set(:omniauth_user) { create(:omniauth_user, provider: 'twitter', extern_uid: '123456') } let_it_be(:omniauth_user) { create(:omniauth_user, provider: 'twitter', extern_uid: '123456') }
end end
# frozen_string_literal: true # frozen_string_literal: true
RSpec.shared_context 'gitlab email notification' do RSpec.shared_context 'gitlab email notification' do
set(:group) { create(:group) } let_it_be(:group, reload: true) { create(:group) }
set(:subgroup) { create(:group, parent: group) } let_it_be(:subgroup) { create(:group, parent: group) }
set(:project) { create(:project, :repository, name: 'a-known-name', group: group) } let_it_be(:project, reload: true) { create(:project, :repository, name: 'a-known-name', group: group) }
set(:recipient) { create(:user, email: 'recipient@example.com') } let_it_be(:recipient, reload: true) { create(:user, email: 'recipient@example.com') }
let(:gitlab_sender_display_name) { Gitlab.config.gitlab.email_display_name } let(:gitlab_sender_display_name) { Gitlab.config.gitlab.email_display_name }
let(:gitlab_sender) { Gitlab.config.gitlab.email_from } let(:gitlab_sender) { Gitlab.config.gitlab.email_from }
let(:gitlab_sender_reply_to) { Gitlab.config.gitlab.email_reply_to } let(:gitlab_sender_reply_to) { Gitlab.config.gitlab.email_reply_to }
......
# frozen_string_literal: true # frozen_string_literal: true
RSpec.shared_context 'ProjectPolicy context' do RSpec.shared_context 'ProjectPolicy context' do
set(:guest) { create(:user) } let_it_be(:guest) { create(:user) }
set(:reporter) { create(:user) } let_it_be(:reporter) { create(:user) }
set(:developer) { create(:user) } let_it_be(:developer) { create(:user) }
set(:maintainer) { create(:user) } let_it_be(:maintainer) { create(:user) }
set(:owner) { create(:user) } let_it_be(:owner) { create(:user) }
set(:admin) { create(:admin) } let_it_be(:admin) { create(:admin) }
let(:project) { create(:project, :public, namespace: owner.namespace) } let(:project) { create(:project, :public, namespace: owner.namespace) }
let(:base_guest_permissions) do let(:base_guest_permissions) do
......
...@@ -8,12 +8,12 @@ RSpec.shared_examples 'snippet visibility' do ...@@ -8,12 +8,12 @@ RSpec.shared_examples 'snippet visibility' do
DatabaseCleaner.clean_with(:truncation) DatabaseCleaner.clean_with(:truncation)
end end
set(:author) { create(:user) } let_it_be(:author) { create(:user) }
set(:member) { create(:user) } let_it_be(:member) { create(:user) }
set(:external) { create(:user, :external) } let_it_be(:external) { create(:user, :external) }
set(:non_member) { create(:user) } let_it_be(:non_member) { create(:user) }
set(:project) do let_it_be(:project, reload: true) do
create(:project).tap do |project| create(:project).tap do |project|
project.add_developer(author) project.add_developer(author)
project.add_developer(member) project.add_developer(member)
......
...@@ -224,7 +224,7 @@ RSpec.shared_examples 'issuable quick actions' do ...@@ -224,7 +224,7 @@ RSpec.shared_examples 'issuable quick actions' do
end end
context 'when user can update issuable' do context 'when user can update issuable' do
set(:developer) { create(:user) } let_it_be(:developer) { create(:user) }
let(:note_author) { developer } let(:note_author) { developer }
before do before do
...@@ -251,7 +251,7 @@ RSpec.shared_examples 'issuable quick actions' do ...@@ -251,7 +251,7 @@ RSpec.shared_examples 'issuable quick actions' do
end end
context 'when user cannot update issuable' do context 'when user cannot update issuable' do
set(:non_member) { create(:user) } let_it_be(:non_member) { create(:user) }
let(:note_author) { non_member } let(:note_author) { non_member }
it 'applies commands that user can execute' do it 'applies commands that user can execute' do
......
...@@ -165,7 +165,7 @@ RSpec.shared_examples 'group and project boards' do |route_definition, ee = fals ...@@ -165,7 +165,7 @@ RSpec.shared_examples 'group and project boards' do |route_definition, ee = fals
end end
context "when the user is parent owner" do context "when the user is parent owner" do
set(:owner) { create(:user) } let_it_be(:owner, reload: true) { create(:user) }
before do before do
if board_parent.try(:namespace) if board_parent.try(:namespace)
......
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