Sha256: b4ea7b4bb06298ad3c6c4a9f747fe6f5c58c63383d8f6459f46d2a8ab88d9dc3
Contents?: true
Size: 1.9 KB
Versions: 1
Compression:
Stored size: 1.9 KB
Contents
require 'mongoid/spec_helper' describe Permits::Ability do context "Guest user" do before :each do @guest = User.create(:name => "Kristian", :role => "guest") @ability = Permits::Ability.new(@guest, :strategy => :orm) @comment = Comment.create(:user_id => @guest.id) @post = Post.create(:writer => @guest.id) @article = Article.create(:author => @guest.id) end it "should be able to :read Comment and Post but NOT Article" do @ability.can?(:read, Comment).should be_true @ability.can?(:read, @comment).should be_true @ability.can?(:read, Post).should be_true @ability.can?(:read, @post).should be_true @ability.can?(:read, Article).should be_false @ability.can?(:read, @article).should be_false end it "should be not able to :update only Comment" do @ability.can?(:update, Comment).should be_true @ability.can?(:update, @comment).should be_true @ability.can?(:update, Post).should be_false @ability.can?(:update, @post).should be_false end end context "Admin user" do before do @admin = User.create(:role => 'admin') @ability = Permits::Ability.new(@admin) end it "should be able to :read anything" do @ability.can?(:read, Comment).should be_true @ability.can?(:read, Post).should be_true end it "should be not able to :update everything" do @ability.can?(:update, Comment).should be_true @ability.can?(:update, Post).should be_true end it "should be not able to :create everything" do @ability.can?(:create, Comment).should be_true @ability.can?(:create, Post).should be_true end it "should be not able to :update everything" do @ability.can?(:destroy, Comment).should be_true @ability.can?(:destroy, Post).should be_true end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cancan-permits-0.2.2 | spec/mongoid/permits_spec.rb |