Skip to content

Commit

Permalink
Use the StagingWorkflow factory
Browse files Browse the repository at this point in the history
Modified the factory to assign a group by default instead of calling
projec.create_staging in the tests
  • Loading branch information
Moises Deniz Aleman committed Nov 19, 2018
1 parent 59a739a commit 8aca0b2
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,8 @@

RSpec.describe Webui::Staging::ProjectsController do
let(:user) { create(:confirmed_user, login: 'tom') }
let(:managers_group) { create(:group) }
let(:project) { user.home_project }
let(:staging_workflow) { project.create_staging(managers: managers_group) }
let(:staging_workflow) { create(:staging_workflow, project: project) }

before do
login(user)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
let(:managers_group) { create(:group) }
let(:other_managers_group) { create(:group) }
let(:project) { user.home_project }
let(:staging_workflow) { project.create_staging(managers: managers_group) }
let(:staging_workflow) { create(:staging_workflow, project: project, managers_group: managers_group) }

before do
login(user)
Expand All @@ -24,7 +24,7 @@

context 'with an existent staging_workflow for project' do
before do
project.create_staging(managers_id: managers_group.id)
staging_workflow
get :new, params: { project: project.name }
end

Expand Down Expand Up @@ -90,7 +90,7 @@

context 'with an existent staging_workflow for project' do
before do
project.create_staging(managers_id: managers_group.id)
staging_workflow
get :show, params: { id: project.staging }
end

Expand All @@ -113,7 +113,7 @@

context 'with an existent staging_workflow for project' do
before do
project.create_staging(managers_id: managers_group.id)
staging_workflow
get :edit, params: { id: project.staging }
end

Expand All @@ -124,9 +124,10 @@
end

describe 'DELETE #destroy' do
let!(:staging_workflow) { create(:staging_workflow, project: project) }

context 'a staging workflow and staging projects' do
before do
project.create_staging(managers_id: managers_group.id)
params = { id: project.staging, staging_project_ids: project.staging.staging_projects.ids, format: :js }
delete :destroy, params: params
end
Expand All @@ -142,7 +143,6 @@

context 'a staging workflow and one staging project' do
before do
project.create_staging(managers_id: managers_group.id)
params = { id: project.staging, staging_project_ids: project.staging.staging_projects.ids.first, format: :js }
delete :destroy, params: params
end
Expand All @@ -158,7 +158,6 @@

context 'a staging workflow unsuccessful' do
before do
project.create_staging(managers_id: managers_group.id)
allow_any_instance_of(Staging::Workflow).to receive(:destroy).and_return(false)
params = { id: project.staging, staging_project_ids: project.staging.staging_projects.ids, format: :js }
delete :destroy, params: params
Expand Down
3 changes: 3 additions & 0 deletions src/api/spec/factories/staging_workflow.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
FactoryBot.define do
factory :staging_workflow, class: 'Staging::Workflow' do
project
association :managers_group, factory: :group, title: 'staging-workflow-managers'

factory :staging_workflow_with_staging_projects do
initialize_with { new(attributes) }

Expand Down

0 comments on commit 8aca0b2

Please sign in to comment.