diff --git a/spec/models/internal_user_spec.rb b/spec/models/internal_user_spec.rb index 6e784299..d02d7aa5 100644 --- a/spec/models/internal_user_spec.rb +++ b/spec/models/internal_user_spec.rb @@ -89,8 +89,8 @@ describe InternalUser do describe '#teacher?' do it 'is only true for teachers' do - expect(build(:admin).teacher?).to be false - expect(build(:teacher).teacher?).to be true + expect(create(:admin).teacher?).to be false + expect(create(:teacher).teacher?).to be true end end end diff --git a/spec/policies/admin/dashboard_policy_spec.rb b/spec/policies/admin/dashboard_policy_spec.rb index b40e2694..63b8dedc 100644 --- a/spec/policies/admin/dashboard_policy_spec.rb +++ b/spec/policies/admin/dashboard_policy_spec.rb @@ -11,7 +11,7 @@ describe Admin::DashboardPolicy do end it 'does not grant access to teachers' do - expect(policy).not_to permit(build(:teacher), :dashboard) + expect(policy).not_to permit(create(:teacher), :dashboard) end it 'does not grant access to external users' do diff --git a/spec/policies/code_ocean/file_policy_spec.rb b/spec/policies/code_ocean/file_policy_spec.rb index 233089cf..c3b2d774 100644 --- a/spec/policies/code_ocean/file_policy_spec.rb +++ b/spec/policies/code_ocean/file_policy_spec.rb @@ -22,7 +22,7 @@ describe CodeOcean::FilePolicy do it 'does not grant access to all other users' do %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), file) + expect(policy).not_to permit(create(factory_name), file) end end end @@ -52,7 +52,7 @@ describe CodeOcean::FilePolicy do it 'does not grant access to all other users' do %i[admin external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), file) + expect(policy).not_to permit(create(factory_name), file) end end end @@ -72,7 +72,7 @@ describe CodeOcean::FilePolicy do it 'does not grant access to all other users' do %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), file) + expect(policy).not_to permit(create(factory_name), file) end end end @@ -82,7 +82,7 @@ describe CodeOcean::FilePolicy do it 'does not grant access to anyone' do %i[admin external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), file) + expect(policy).not_to permit(create(factory_name), file) end end end diff --git a/spec/policies/consumer_policy_spec.rb b/spec/policies/consumer_policy_spec.rb index 4f4164fb..c987a6a7 100644 --- a/spec/policies/consumer_policy_spec.rb +++ b/spec/policies/consumer_policy_spec.rb @@ -10,7 +10,7 @@ describe ConsumerPolicy do it 'grants access to admins only' do expect(policy).to permit(build(:admin), Consumer.new) %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), Consumer.new) + expect(policy).not_to permit(create(factory_name), Consumer.new) end end end diff --git a/spec/policies/execution_environment_policy_spec.rb b/spec/policies/execution_environment_policy_spec.rb index bfc5806a..f6378137 100644 --- a/spec/policies/execution_environment_policy_spec.rb +++ b/spec/policies/execution_environment_policy_spec.rb @@ -13,7 +13,7 @@ describe ExecutionEnvironmentPolicy do end it 'grants access to teachers' do - expect(policy).to permit(build(:teacher), execution_environment) + expect(policy).to permit(create(:teacher), execution_environment) end it 'does not grant access to external users' do @@ -33,7 +33,7 @@ describe ExecutionEnvironmentPolicy do it 'does not grant access to all other users' do %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), execution_environment) + expect(policy).not_to permit(create(factory_name), execution_environment) end end end @@ -51,7 +51,7 @@ describe ExecutionEnvironmentPolicy do it 'does not grant access to all other users' do %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), execution_environment) + expect(policy).not_to permit(create(factory_name), execution_environment) end end end @@ -64,7 +64,7 @@ describe ExecutionEnvironmentPolicy do it 'does not grant access to all other users' do %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name)) + expect(policy).not_to permit(create(factory_name)) end end end diff --git a/spec/policies/exercise_policy_spec.rb b/spec/policies/exercise_policy_spec.rb index 3ccfe563..ec7c0c7b 100644 --- a/spec/policies/exercise_policy_spec.rb +++ b/spec/policies/exercise_policy_spec.rb @@ -11,7 +11,7 @@ describe ExercisePolicy do it 'grants access to admins only' do expect(policy).to permit(build(:admin), exercise) %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), exercise) + expect(policy).not_to permit(create(factory_name), exercise) end end end @@ -23,7 +23,7 @@ describe ExercisePolicy do end it 'grants access to teachers' do - expect(policy).to permit(build(:teacher), exercise) + expect(policy).to permit(create(:teacher), exercise) end it 'does not grant access to external users' do @@ -44,7 +44,7 @@ describe ExercisePolicy do it 'does not grant access to all other users' do %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), exercise) + expect(policy).not_to permit(create(factory_name), exercise) end end end @@ -86,7 +86,7 @@ describe ExercisePolicy do %i[external_user teacher].each do |factory_name| context "when user is #{factory_name}" do - let(:user) { build(factory_name) } + let(:user) { create(factory_name) } it 'does not grant access' do expect(policy).not_to permit(user, exercise) @@ -117,7 +117,7 @@ describe ExercisePolicy do it 'does not grant access to anyone' do %i[admin external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), exercise) + expect(policy).not_to permit(create(factory_name), exercise) end end end @@ -127,7 +127,7 @@ describe ExercisePolicy do it 'grants access to anyone' do %i[admin external_user teacher].each do |factory_name| - expect(policy).to permit(build(factory_name), exercise) + expect(policy).to permit(create(factory_name), exercise) end end end @@ -137,7 +137,7 @@ describe ExercisePolicy do it 'grants access to anyone' do %i[admin external_user teacher].each do |factory_name| - expect(policy).to permit(build(factory_name), exercise) + expect(policy).to permit(create(factory_name), exercise) end end end @@ -155,7 +155,7 @@ describe ExercisePolicy do it 'does not grant access to everyone' do %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), exercise) + expect(policy).not_to permit(create(factory_name), exercise) end end end @@ -168,7 +168,7 @@ describe ExercisePolicy do it 'grants access to anyone' do %i[admin external_user teacher].each do |factory_name| - expect(policy).to permit(build(factory_name), exercise) + expect(policy).to permit(create(factory_name), exercise) end end end @@ -176,7 +176,7 @@ describe ExercisePolicy do context 'when teacher-defined assessments are not available' do it 'does not grant access to anyone' do %i[admin external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), exercise) + expect(policy).not_to permit(create(factory_name), exercise) end end end diff --git a/spec/policies/external_user_policy_spec.rb b/spec/policies/external_user_policy_spec.rb index 8e752327..70c8e11d 100644 --- a/spec/policies/external_user_policy_spec.rb +++ b/spec/policies/external_user_policy_spec.rb @@ -10,7 +10,7 @@ describe ExternalUserPolicy do it 'grants access to admins only' do expect(policy).to permit(build(:admin), ExternalUser.new) %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), ExternalUser.new) + expect(policy).not_to permit(create(factory_name), ExternalUser.new) end end end @@ -18,10 +18,10 @@ describe ExternalUserPolicy do permissions :index? do it 'grants access to admins and teachers only' do - expect(policy).to permit(build(:admin), ExternalUser.new) - expect(policy).to permit(build(:teacher), ExternalUser.new) + expect(policy).to permit(create(:admin), ExternalUser.new) + expect(policy).to permit(create(:teacher), ExternalUser.new) [:external_user].each do |factory_name| - expect(policy).not_to permit(build(factory_name), ExternalUser.new) + expect(policy).not_to permit(create(factory_name), ExternalUser.new) end end end diff --git a/spec/policies/file_type_policy_spec.rb b/spec/policies/file_type_policy_spec.rb index 5c6ce645..86b8ef85 100644 --- a/spec/policies/file_type_policy_spec.rb +++ b/spec/policies/file_type_policy_spec.rb @@ -19,7 +19,7 @@ describe FileTypePolicy do it 'does not grant access to all other users' do %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), file_type) + expect(policy).not_to permit(create(factory_name), file_type) end end end diff --git a/spec/policies/internal_user_policy_spec.rb b/spec/policies/internal_user_policy_spec.rb index 1e900eb0..1b2378a3 100644 --- a/spec/policies/internal_user_policy_spec.rb +++ b/spec/policies/internal_user_policy_spec.rb @@ -10,7 +10,7 @@ describe InternalUserPolicy do it 'grants access to admins only' do expect(policy).to permit(build(:admin), InternalUser.new) %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), InternalUser.new) + expect(policy).not_to permit(create(factory_name), InternalUser.new) end end end @@ -20,7 +20,7 @@ describe InternalUserPolicy do context 'with an admin user' do it 'grants access to no one' do %i[admin external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), build(:admin)) + expect(policy).not_to permit(create(factory_name), build(:admin)) end end end @@ -29,7 +29,7 @@ describe InternalUserPolicy do it 'grants access to admins only' do expect(policy).to permit(build(:admin), InternalUser.new) %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), build(:teacher)) + expect(policy).not_to permit(create(factory_name), create(:teacher)) end end end diff --git a/spec/policies/submission_policy_spec.rb b/spec/policies/submission_policy_spec.rb index 71bdc3e0..bb36c542 100644 --- a/spec/policies/submission_policy_spec.rb +++ b/spec/policies/submission_policy_spec.rb @@ -8,7 +8,7 @@ describe SubmissionPolicy do permissions :create? do it 'grants access to anyone' do %i[admin external_user teacher].each do |factory_name| - expect(policy).to permit(build(factory_name), Submission.new) + expect(policy).to permit(create(factory_name), Submission.new) end end end @@ -30,7 +30,7 @@ describe SubmissionPolicy do it 'grants access to admins only' do expect(policy).to permit(build(:admin), Submission.new) %i[external_user teacher].each do |factory_name| - expect(policy).not_to permit(build(factory_name), Submission.new) + expect(policy).not_to permit(create(factory_name), Submission.new) end end end