adding initial aliases for index, show, new and edit
This commit is contained in:
parent
d5f6e0570c
commit
be1892cca8
|
@ -2,6 +2,9 @@ module CanCan
|
||||||
module Ability
|
module Ability
|
||||||
def self.included(base)
|
def self.included(base)
|
||||||
base.extend ClassMethods
|
base.extend ClassMethods
|
||||||
|
base.alias_action :index, :show, :to => :read
|
||||||
|
base.alias_action :new, :to => :create
|
||||||
|
base.alias_action :edit, :to => :update
|
||||||
end
|
end
|
||||||
|
|
||||||
def can?(original_action, target)
|
def can?(original_action, target)
|
||||||
|
|
|
@ -18,6 +18,7 @@ describe CanCan::Ability do
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should return what block returns on a can call" do
|
it "should return what block returns on a can call" do
|
||||||
|
@ability_class.can :read, :all
|
||||||
@ability_class.can :read, Symbol do |sym|
|
@ability_class.can :read, Symbol do |sym|
|
||||||
sym
|
sym
|
||||||
end
|
end
|
||||||
|
@ -63,4 +64,17 @@ describe CanCan::Ability do
|
||||||
@ability.can?(:foo, 123).should == [:foo, Fixnum, 123]
|
@ability.can?(:foo, 123).should == [:foo, Fixnum, 123]
|
||||||
@ability.can?(:bar, Fixnum).should == [:bar, Fixnum, nil]
|
@ability.can?(:bar, Fixnum).should == [:bar, Fixnum, nil]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it "should automatically alias index and show into read calls" do
|
||||||
|
@ability_class.can :read, :all
|
||||||
|
@ability.can?(:index, 123).should be_true
|
||||||
|
@ability.can?(:show, 123).should be_true
|
||||||
|
end
|
||||||
|
|
||||||
|
it "should automatically alias new and edit into create and update respectively" do
|
||||||
|
@ability_class.can(:create, :all) { :create_called }
|
||||||
|
@ability_class.can(:update, :all) { :update_called }
|
||||||
|
@ability.can?(:new, 123).should == :create_called
|
||||||
|
@ability.can?(:edit, 123).should == :update_called
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue
Block a user