cancan/spec/spec_helper.rb

44 lines
862 B
Ruby
Raw Normal View History

2009-11-16 22:28:52 +00:00
require 'rubygems'
require 'spec'
require 'active_support'
require 'active_record'
require 'action_controller'
require 'action_view'
2010-07-20 23:00:22 +00:00
require 'matchers'
2010-04-13 12:59:50 +00:00
require 'cancan'
2010-04-13 13:02:39 +00:00
require 'cancan/matchers'
2009-11-16 22:28:52 +00:00
Spec::Runner.configure do |config|
config.mock_with :rr
end
class Ability
include CanCan::Ability
2010-05-21 20:41:24 +00:00
def initialize(user)
end
end
# this class helps out in testing nesting and SQL conditions
class Person
2010-05-25 08:14:01 +00:00
def self.sanitize_sql(hash_cond)
case hash_cond
when Hash
sanitize_hash(hash_cond).join(' AND ')
2010-05-25 08:14:01 +00:00
when Array
hash_cond.shift.gsub('?'){"#{hash_cond.shift.inspect}"}
when String then hash_cond
end
end
def self.sanitize_hash(hash)
hash.map do |name, value|
if Hash === value
sanitize_hash(value).map{|cond| "#{name}.#{cond}"}
else
"#{name}=#{value}"
end
end.flatten
end
2010-05-25 08:14:01 +00:00
end