aboutsummaryrefslogtreecommitdiffstats
path: root/spec/policies
diff options
context:
space:
mode:
Diffstat (limited to 'spec/policies')
-rw-r--r--spec/policies/workgroup_policy_spec.rb44
1 files changed, 44 insertions, 0 deletions
diff --git a/spec/policies/workgroup_policy_spec.rb b/spec/policies/workgroup_policy_spec.rb
new file mode 100644
index 000000000..19f6c29d1
--- /dev/null
+++ b/spec/policies/workgroup_policy_spec.rb
@@ -0,0 +1,44 @@
+RSpec.describe WorkgroupPolicy, type: :policy do
+
+ let( :record ){ build_stubbed :workgroup }
+
+ permissions :create? do
+ it "should not allow for creation" do
+ expect_it.not_to permit(user_context, record)
+ end
+ end
+
+ permissions :update? do
+ it "should not allow for update" do
+ expect_it.not_to permit(user_context, record)
+ end
+
+ context "for the owner" do
+ before do
+ record.owner = user.organisation
+ end
+
+ it "should allow for update" do
+ expect_it.to permit(user_context, record)
+ end
+ end
+ end
+
+ permissions :destroy? do
+ it "should not allow for destroy" do
+ expect_it.not_to permit(user_context, record)
+ end
+
+ context "for the owner" do
+ before do
+ record.owner = user.organisation
+ end
+
+ it "should not allow for destroy" do
+ expect_it.not_to permit(user_context, record)
+ end
+ end
+ end
+
+
+end