getting all specs passing again

This commit is contained in:
Ryan Bates
2011-03-23 19:47:34 -07:00
parent 98ed39264e
commit 3a825ed0d1
10 changed files with 92 additions and 86 deletions

View File

@@ -207,7 +207,7 @@ module CanCan
def model_adapter(model_class, action)
adapter_class = ModelAdapters::AbstractAdapter.adapter_class(model_class)
adapter_class.new(model_class, relevant_rules_for_query(action, model_class))
adapter_class.new(model_class, relevant_rules_for_query(action, model_class.to_s.underscore.pluralize.to_sym))
end
# See ControllerAdditions#authorize! for documentation.
@@ -249,7 +249,7 @@ module CanCan
private
def unauthorized_message_keys(action, subject)
subject = (subject.kind_of?(Symbol) ? subject.to_s : subject.class.to_s.underscore.humanize.downcase.pluralize)
subject = (subject.kind_of?(Symbol) ? subject.to_s : subject.class.to_s.underscore.pluralize)
[aliases_for(:subjects, subject.to_sym), :all].flatten.map do |try_subject|
[aliases_for(:actions, action.to_sym), :access].flatten.map do |try_action|
:"#{try_action}.#{try_subject}"

View File

@@ -38,7 +38,7 @@ module CanCan
def authorize_resource
unless skip?(:authorize)
@controller.authorize!(authorization_action, resource_instance || resource_class_with_parent)
@controller.authorize!(authorization_action, resource_instance || subject_name_with_parent)
end
end
@@ -74,7 +74,7 @@ module CanCan
end
def load_collection?
resource_base.respond_to?(:accessible_by) && !current_ability.has_block?(authorization_action, resource_class)
resource_base.respond_to?(:accessible_by) && !current_ability.has_block?(authorization_action, subject_name)
end
def load_collection
@@ -91,7 +91,7 @@ module CanCan
end
def initial_attributes
current_ability.attributes_for(@params[:action].to_sym, resource_class).delete_if do |key, value|
current_ability.attributes_for(@params[:action].to_sym, subject_name).delete_if do |key, value|
@params[name] && @params[name].include?(key)
end
end
@@ -128,8 +128,12 @@ module CanCan
end
end
def resource_class_with_parent
parent_resource ? {parent_resource => resource_class} : resource_class
def subject_name
resource_class.to_s.underscore.pluralize.to_sym
end
def subject_name_with_parent
parent_resource ? {parent_resource => subject_name} : subject_name
end
def resource_instance=(instance)

View File

@@ -20,7 +20,9 @@ module CanCan
@model_class.where(:_id => {'$exists' => false, '$type' => 7}) # return no records in Mongoid
else
@rules.inject(@model_class.all) do |records, rule|
if rule.base_behavior
if rule.conditions.empty?
records
elsif rule.base_behavior
records.or(rule.conditions)
else
records.excludes(rule.conditions)

View File

@@ -139,7 +139,7 @@ module CanCan
end
def subject_name(subject)
subject.class.to_s.underscore.humanize.downcase.pluralize.to_sym
subject.class.to_s.underscore.pluralize.to_sym
end
def model_adapter(subject)