Revert controllers spec

This commit is contained in:
Urban Rotnik 2020-08-27 13:26:17 +02:00
parent 6fefd4d945
commit fb8f69c3e4
24 changed files with 45 additions and 88 deletions

View file

@ -13,9 +13,7 @@ describe AssetsController, type: :controller do
create :project, team: team, user_projects: [user_project]
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:my_module) { create :my_module, name: 'test task', experiment: experiment, my_module_status: status }
let(:my_module) { create :my_module, name: 'test task', experiment: experiment }
let(:protocol) do
create :protocol, my_module: my_module, team: team, added_by: user
end

View file

@ -16,8 +16,6 @@ describe CanvasController do
end
let(:experiment) { create :experiment, project: project }
let(:experiment2) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
# Idea of this "end to end" test is to put a lot "work" on method `@experiment.udpate_canvas` and controller actipn
# update also. We've implemented some unit tests on `.update_canvas` itself, but behaviour is tightly coupled with
@ -36,14 +34,14 @@ describe CanvasController do
# Setup environment for "big change" request
# Tasks in DB
let!(:task1) { create :my_module, x: 0, y: 1, experiment: experiment, my_module_status: status }
let!(:task2) { create :my_module, x: 0, y: 2, experiment: experiment, my_module_status: status }
let!(:task3) { create :my_module, x: 0, y: 3, experiment: experiment, my_module_status: status }
let!(:task4) { create :my_module, x: 0, y: 4, experiment: experiment, my_module_status: status }
let!(:task5) { create :my_module, x: 0, y: 5, experiment: experiment, my_module_status: status }
let!(:task6) { create :my_module, x: 0, y: 6, experiment: experiment, my_module_status: status }
let!(:task7) { create :my_module, x: 0, y: 7, experiment: experiment, my_module_status: status }
let!(:task8) { create :my_module, x: 0, y: 8, experiment: experiment, my_module_status: status }
let!(:task1) { create :my_module, x: 0, y: 1, experiment: experiment }
let!(:task2) { create :my_module, x: 0, y: 2, experiment: experiment }
let!(:task3) { create :my_module, x: 0, y: 3, experiment: experiment }
let!(:task4) { create :my_module, x: 0, y: 4, experiment: experiment }
let!(:task5) { create :my_module, x: 0, y: 5, experiment: experiment }
let!(:task6) { create :my_module, x: 0, y: 6, experiment: experiment }
let!(:task7) { create :my_module, x: 0, y: 7, experiment: experiment }
let!(:task8) { create :my_module, x: 0, y: 8, experiment: experiment }
let!(:step_on_task5) { create :step, name: 'task5_step', protocol: task5.protocol }
let!(:step_on_task6) { create :step, name: 'task6_step', protocol: task6.protocol }

View file

@ -13,9 +13,7 @@ describe MyModuleCommentsController, type: :controller do
create :user_project, :normal_user, user: user, project: project
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:my_module) { create :my_module, experiment: experiment, my_module_status: status }
let(:my_module) { create :my_module, experiment: experiment }
let(:task_comment) { create :task_comment, user: user, my_module: my_module }
describe 'POST create' do

View file

@ -20,9 +20,7 @@ describe MyModuleRepositoriesController, type: :controller do
create :repository_row, created_by: user, repository: repository
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:my_module) { create :my_module, experiment: experiment, my_module_status: status }
let(:my_module) { create :my_module, experiment: experiment }
describe 'PUT update (assign repository records)' do
let(:params) do
@ -57,7 +55,7 @@ describe MyModuleRepositoriesController, type: :controller do
rows_to_assign: [repository_row.id],
downstream: true }
3.times do |_i|
child_module = create :my_module, experiment: experiment, my_module_status: status
child_module = create :my_module, experiment: experiment
Connection.create(output_id: parent_my_module.id, input_id: child_module.id)
end
expect { put :update, params: params_downstream, format: :json }
@ -106,7 +104,7 @@ describe MyModuleRepositoriesController, type: :controller do
rows_to_unassign: [repository_row.id],
downstream: true }
3.times do |_i|
child_module = create :my_module, experiment: experiment, my_module_status: status
child_module = create :my_module, experiment: experiment
Connection.create(output_id: parent_my_module.id, input_id: child_module.id)
create :mm_repository_row, repository_row: repository_row,
my_module: child_module,
@ -164,7 +162,7 @@ describe MyModuleRepositoriesController, type: :controller do
rows_to_unassign: [repository_row_2.id],
downstream: true }
3.times do |_i|
child_module = create :my_module, experiment: experiment, my_module_status: status
child_module = create :my_module, experiment: experiment
Connection.create(output_id: parent_my_module.id, input_id: child_module.id)
create :mm_repository_row, repository_row: repository_row_2,
my_module: child_module,

View file

@ -13,9 +13,7 @@ describe MyModuleTagsController, type: :controller do
create :user_project, :normal_user, user: user, project: project
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:my_module) { create :my_module, experiment: experiment, my_module_status: status }
let(:my_module) { create :my_module, experiment: experiment }
describe 'POST create' do
let(:tag) { create :tag, project: project }

View file

@ -17,10 +17,7 @@ describe MyModulesController, type: :controller do
create :repository_row, created_by: user, repository: repository
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses, :in_team, team: team }
let(:status1) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:status2) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:my_module) { create :my_module, experiment: experiment, my_module_status: status1 }
let(:my_module) { create :my_module, experiment: experiment }
describe 'PUT update' do
let(:action) { put :update, params: params, format: :json }
@ -28,7 +25,7 @@ describe MyModulesController, type: :controller do
context 'when restoring task from archive' do
let(:params) { { id: my_module.id, my_module: { archived: false } } }
let(:my_module) do
create :my_module, archived: true, experiment: experiment, my_module_status: status1
create :my_module, archived: true, experiment: experiment
end
it 'calls create activity for restoring task from archive' do
@ -86,7 +83,7 @@ describe MyModulesController, type: :controller do
context 'when deleting due_date' do
let(:params) { { id: my_module.id, my_module: { due_date: '' } } }
let(:my_module) do
create :my_module, :with_due_date, experiment: experiment, my_module_status: status1
create :my_module, :with_due_date, experiment: experiment
end
it 'calls create activity for removing due date' do
@ -108,7 +105,7 @@ describe MyModulesController, type: :controller do
{ id: my_module.id, my_module: { due_date: '02/21/2019 23:59' } }
end
let(:my_module) do
create :my_module, :with_due_date, experiment: experiment, my_module_status: status1
create :my_module, :with_due_date, experiment: experiment
end
it 'calls create activity for changing due date' do
@ -137,17 +134,17 @@ describe MyModulesController, type: :controller do
}
end
context 'when states updated' do
let(:status_id) { status2.id }
before(:all) do
MyModuleStatusFlow.ensure_default
end
before do
my_module.update(my_module_status: status1)
end
context 'when states updated' do
let(:status_id) { my_module.my_module_status.next_status.id }
it 'changes status' do
action
expect(my_module.reload.my_module_status.name).to be_eql(status2.name)
expect(my_module.reload.my_module_status.id).to be_eql(status_id)
expect(response).to have_http_status 200
end
end
@ -155,10 +152,6 @@ describe MyModulesController, type: :controller do
context 'when status not found' do
let(:status_id) { -1 }
before do
my_module.update(my_module_status: status1)
end
it 'renders 404' do
action

View file

@ -13,9 +13,7 @@ describe ProtocolsController, type: :controller do
create :user_project, :normal_user, user: user, project: project
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:my_module) { create :my_module, experiment: experiment, my_module_status: status }
let(:my_module) { create :my_module, experiment: experiment }
describe 'POST create' do
let(:action) { post :create, params: params, format: :json }

View file

@ -12,9 +12,7 @@ describe ResultAssetsController, type: :controller do
create :project, team: team, user_projects: [user_project]
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:task) { create :my_module, name: 'test task', experiment: experiment, my_module_status: status }
let(:task) { create :my_module, name: 'test task', experiment: experiment }
let(:result) do
create :result, name: 'test result', my_module: task, user: user
end

View file

@ -12,9 +12,7 @@ describe ResultCommentsController, type: :controller do
create :project, team: team, user_projects: [user_project]
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:task) { create :my_module, name: 'test task', experiment: experiment, my_module_status: status }
let(:task) { create :my_module, name: 'test task', experiment: experiment }
let(:result) do
create :result, name: 'test result', my_module: task, user: user
end

View file

@ -12,9 +12,7 @@ describe ResultTablesController, type: :controller do
create :project, team: team, user_projects: [user_project]
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:task) { create :my_module, name: 'test task', experiment: experiment, my_module_status: status }
let(:task) { create :my_module, name: 'test task', experiment: experiment }
let(:result) do
create :result, name: 'test result', my_module: task, user: user
end

View file

@ -12,9 +12,7 @@ describe ResultTextsController, type: :controller do
create :project, team: team, user_projects: [user_project]
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:task) { create :my_module, name: 'test task', experiment: experiment, my_module_status: status }
let(:task) { create :my_module, name: 'test task', experiment: experiment }
let(:result) do
create :result, name: 'test result', my_module: task, user: user
end

View file

@ -12,9 +12,7 @@ describe ResultsController, type: :controller do
create :project, team: team, user_projects: [user_project]
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:task) { create :my_module, name: 'test task', experiment: experiment, my_module_status: status }
let(:task) { create :my_module, name: 'test task', experiment: experiment }
let(:result) do
create :result, name: 'test result', my_module: task, user: user
end

View file

@ -13,9 +13,7 @@ describe StepCommentsController, type: :controller do
create :user_project, :normal_user, user: user, project: project
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:my_module) { create :my_module, experiment: experiment, my_module_status: status }
let(:my_module) { create :my_module, experiment: experiment }
let(:protocol) do
create :protocol, my_module: my_module, team: team, added_by: user
end

View file

@ -13,9 +13,7 @@ describe StepsController, type: :controller do
create :user_project, :normal_user, user: user, project: project
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:my_module) { create :my_module, experiment: experiment, my_module_status: status }
let(:my_module) { create :my_module, experiment: experiment }
let(:protocol) do
create :protocol, my_module: my_module, team: team, added_by: user
end

View file

@ -13,9 +13,7 @@ describe TagsController, type: :controller do
create :user_project, :normal_user, user: user, project: project
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:my_module) { create :my_module, experiment: experiment, my_module_status: status }
let(:my_module) { create :my_module, experiment: experiment }
let(:tag) { create :tag, project: project }
describe 'POST create' do

View file

@ -13,9 +13,7 @@ describe UserMyModulesController, type: :controller do
create :user_project, :owner, user: user, project: project
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:my_module) { create :my_module, experiment: experiment, my_module_status: status }
let(:my_module) { create :my_module, experiment: experiment }
describe 'POST create' do
let(:action) { post :create, params: params, format: :json }

View file

@ -14,9 +14,7 @@ describe WopiController, type: :controller do
create :project, team: team, user_projects: [user_project]
end
let(:experiment) { create :experiment, project: project }
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:my_module) { create :my_module, name: 'test task', experiment: experiment, my_module_status: status }
let(:my_module) { create :my_module, name: 'test task', experiment: experiment }
let(:result) do
create :result, name: 'test result', my_module: my_module, user: user
end

View file

@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
factory :my_module_status_condition do
factory :active_condition, class: 'MyModuleStatusConditions::Active' do
my_module_status
end
end

View file

@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
factory :my_module_status_consequence do
factory :change_activity_consequence, class: 'MyModuleStatusConsequences::ChangeActivity' do
my_module_status
end
end

View file

@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
factory :my_module_status_implication do
factory :read_only_implication, class: 'MyModuleStatusImplications::ReadOnly' do
my_module_status
end
end

View file

@ -7,7 +7,6 @@ FactoryBot.define do
sequence(:x) { |n| n }
workflow_order { MyModule.where(experiment_id: experiment.id).count + 1 }
experiment
my_module_status
my_module_group { create :my_module_group, experiment: experiment }
trait :with_tag do
tags { create_list :tag, 3, project: experiment.project }
@ -15,5 +14,8 @@ FactoryBot.define do
trait :with_due_date do
due_date { Faker::Time.between(from: Date.today, to: Date.today + 10.days) }
end
trait :with_status do
my_module_status
end
end
end

View file

@ -12,9 +12,7 @@ describe SmartAnnotations::HtmlPreview do
created_by: user,
last_modified_by: user
end
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:task) { create :my_module, name: 'task', experiment: experiment, my_module_status: status }
let(:task) { create :my_module, name: 'task', experiment: experiment }
describe 'Project annotations with type prj' do
it 'returns a html snippet' do

View file

@ -17,9 +17,7 @@ describe SmartAnnotations::PermissionEval do
created_by: user,
last_modified_by: user
end
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:task) { create :my_module, name: 'task', experiment: experiment, my_module_status: status }
let(:task) { create :my_module, name: 'task', experiment: experiment }
let(:repository) { create :repository, team: team, created_by: user }
let(:repository_item) { create :repository_row, repository: repository }

View file

@ -12,9 +12,7 @@ describe SmartAnnotations::TextPreview do
created_by: user,
last_modified_by: user
end
let(:my_module_status_flow) { create :my_module_status_flow, :with_statuses }
let(:status) { create :my_module_status, my_module_status_flow: my_module_status_flow }
let(:task) { create :my_module, name: 'task', experiment: experiment, my_module_status: status }
let(:task) { create :my_module, name: 'task', experiment: experiment }
describe 'Project annotations' do
it 'returns a text snippet' do