diff options
| author | Zog | 2018-05-07 15:25:50 +0200 | 
|---|---|---|
| committer | Zog | 2018-05-07 15:25:50 +0200 | 
| commit | fb4d1c66cb4c0cd83e183a13ca5f9ea44803631b (patch) | |
| tree | 635d6315e5dbc734ad2ebd68b525358ba91e9a65 /spec/policies | |
| parent | fac03f56f2e84705cd30fc31d8007cc64f77d500 (diff) | |
| download | chouette-core-fb4d1c66cb4c0cd83e183a13ca5f9ea44803631b.tar.bz2 | |
Refs #6960; Add owners to workgroups
And define policies
Diffstat (limited to 'spec/policies')
| -rw-r--r-- | spec/policies/workgroup_policy_spec.rb | 44 | 
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 | 
