aboutsummaryrefslogtreecommitdiffstats
path: root/spec/policies
diff options
context:
space:
mode:
authorRobert2017-09-12 15:39:43 +0200
committerRobert2017-09-26 17:05:10 +0200
commitda6784bf12d31da369571dd7b16e8ee463e7f67c (patch)
treef3b7906c0d3b6e1c15403e7def4e6702b52abbb7 /spec/policies
parent94204f6a3876ad4e7577192005565eb629f40499 (diff)
downloadchouette-core-da6784bf12d31da369571dd7b16e8ee463e7f67c.tar.bz2
Refs: #4440@1.5h;
ImportPolicy changing *.imports →' imports.*
Diffstat (limited to 'spec/policies')
-rw-r--r--spec/policies/import_policy_spec.rb41
1 files changed, 41 insertions, 0 deletions
diff --git a/spec/policies/import_policy_spec.rb b/spec/policies/import_policy_spec.rb
new file mode 100644
index 000000000..fd9f3172c
--- /dev/null
+++ b/spec/policies/import_policy_spec.rb
@@ -0,0 +1,41 @@
+RSpec.describe ImportPolicy, type: :policy do
+
+ let( :record ){ build_stubbed :import }
+ before { stub_policy_scope(record) }
+
+ #
+ # Non Destructive
+ # ---------------
+
+ context 'Non Destructive actions →' do
+ permissions :index? do
+ it_behaves_like 'always allowed', 'anything', archived: true
+ end
+ permissions :show? do
+ it_behaves_like 'always allowed', 'anything', archived: true
+ end
+ end
+
+
+ #
+ # Destructive
+ # -----------
+
+ context 'Destructive actions →' do
+ permissions :create? do
+ it_behaves_like 'permitted policy', 'imports.create', archived: true
+ end
+ permissions :destroy? do
+ it_behaves_like 'permitted policy', 'imports.destroy', archived: true
+ end
+ permissions :edit? do
+ it_behaves_like 'permitted policy', 'imports.update', archived: true
+ end
+ permissions :new? do
+ it_behaves_like 'permitted policy', 'imports.create', archived: true
+ end
+ permissions :update? do
+ it_behaves_like 'permitted policy', 'imports.update', archived: true
+ end
+ end
+end