diff --git a/cancan.gemspec b/cancan.gemspec index ac1a179f..2f2fa3ba 100644 --- a/cancan.gemspec +++ b/cancan.gemspec @@ -10,7 +10,7 @@ Gem::Specification.new do |s| s.files = Dir["{lib,spec}/**/*", "[A-Z]*", "init.rb"] - ["Gemfile.lock"] s.require_path = "lib" - s.add_development_dependency 'rspec', '~> 2.1.0' + s.add_development_dependency 'rspec', '~> 2.6.0' s.add_development_dependency 'rails', '~> 3.0.9' s.add_development_dependency 'rr', '~> 0.10.11' # 1.0.0 has respond_to? issues: http://github.com/btakita/rr/issues/issue/43 s.add_development_dependency 'supermodel', '~> 0.1.4' diff --git a/lib/cancan/controller_resource.rb b/lib/cancan/controller_resource.rb index d4f30b39..7f29d616 100644 --- a/lib/cancan/controller_resource.rb +++ b/lib/cancan/controller_resource.rb @@ -208,7 +208,7 @@ def name end def namespaced_name - @params[:controller].sub("Controller", "").singularize.camelize.constantize + @name || @params[:controller].sub("Controller", "").singularize.camelize.constantize rescue NameError name end diff --git a/spec/cancan/controller_resource_spec.rb b/spec/cancan/controller_resource_spec.rb index 220971fe..21493f93 100644 --- a/spec/cancan/controller_resource_spec.rb +++ b/spec/cancan/controller_resource_spec.rb @@ -197,8 +197,8 @@ class Project < ::Project; end it "should load parent resource through proper id parameter" do project = Project.create! - @params.merge!(:action => "index", :project_id => project.id) - resource = CanCan::ControllerResource.new(@controller, :project, :parent => true) + @params.merge!(:controller => "categories", :action => "index", :project_id => project.id) + resource = CanCan::ControllerResource.new(@controller, :project) resource.load_resource @controller.instance_variable_get(:@project).should == project end diff --git a/spec/cancan/model_adapters/active_record_adapter_spec.rb b/spec/cancan/model_adapters/active_record_adapter_spec.rb index cf4155bd..0c82c02d 100644 --- a/spec/cancan/model_adapters/active_record_adapter_spec.rb +++ b/spec/cancan/model_adapters/active_record_adapter_spec.rb @@ -1,10 +1,6 @@ if ENV["MODEL_ADAPTER"].nil? || ENV["MODEL_ADAPTER"] == "active_record" require "spec_helper" - RSpec.configure do |config| - config.extend WithModel - end - ActiveRecord::Base.establish_connection(:adapter => "sqlite3", :database => ":memory:") describe CanCan::ModelAdapters::ActiveRecordAdapter do diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 4deccd1a..95762755 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -9,11 +9,15 @@ require 'cancan/matchers' RSpec.configure do |config| + config.treat_symbols_as_metadata_keys_with_true_values = true + config.filter_run :focus => true + config.run_all_when_everything_filtered = true config.mock_with :rr config.before(:each) do Project.delete_all Category.delete_all end + config.extend WithModel end class Ability