mirror of
https://github.com/TracksApp/tracks.git
synced 2026-01-01 23:08:49 +01:00
* Ran rake rails:update * Added old actionwebservice framework * Updated RSpec and RSpec-Rails * Removed asset_packager plugin (not compatible, Scott no longer maintaining), and replaced with bundle_fu. See the bundle_fu README for more info. * Hacks to UJS and ARTS plugins, which are no longer supported. Probably should move off both UJS and RJS. * Hack to flashobject_helper plugin (upgrade to Rails 2.2-compatible version if/when it comes out.) * Hack to skinny-spec plugin, for Rails 2.2 compatibility. Should check for official release. * Hacks to resource_feeder plugin, for Rails 2.2 compatibility. Should check for official release (not likely) or move off it. * Addressed some deprecation warnings. More to come. * My mobile mime type hackery is no longer necessary with new Rails features. Yay! * Updated environment.rb.tmpl with changes TODO: * Restore view specs marked pending * Fix failing integration tests. * Try selenium tests. * Investigate OpenID support. * Address deprecation warnings. * Consider moving parts of environment.rb to initializers * Address annoying config.gem warning about highline gem
46 lines
1.1 KiB
Ruby
46 lines
1.1 KiB
Ruby
module Spec
|
|
module Matchers
|
|
|
|
class RespondTo #:nodoc:
|
|
def initialize(*names)
|
|
@names = names
|
|
@names_not_responded_to = []
|
|
end
|
|
|
|
def matches?(given)
|
|
@given = given
|
|
@names.each do |name|
|
|
unless given.respond_to?(name)
|
|
@names_not_responded_to << name
|
|
end
|
|
end
|
|
return @names_not_responded_to.empty?
|
|
end
|
|
|
|
def failure_message
|
|
"expected #{@given.inspect} to respond to #{@names_not_responded_to.collect {|name| name.inspect }.join(', ')}"
|
|
end
|
|
|
|
def negative_failure_message
|
|
"expected #{@given.inspect} not to respond to #{@names.collect {|name| name.inspect }.join(', ')}"
|
|
end
|
|
|
|
def description
|
|
"respond to ##{@names.to_s}"
|
|
end
|
|
end
|
|
|
|
# :call-seq:
|
|
# should respond_to(*names)
|
|
# should_not respond_to(*names)
|
|
#
|
|
# Matches if the target object responds to all of the names
|
|
# provided. Names can be Strings or Symbols.
|
|
#
|
|
# == Examples
|
|
#
|
|
def respond_to(*names)
|
|
Matchers::RespondTo.new(*names)
|
|
end
|
|
end
|
|
end
|