blob: a7af7f42249fdb44d2843eb604d6c70b4a3eba88 (
plain) (
tree)
|
|
module ActiveSupport
module Testing
module Declarative
def self.extended(klass)
klass.class_eval do
unless method_defined?(:describe)
def self.describe(text)
class_eval <<-RUBY_EVAL
def self.name
"#{text}"
end
RUBY_EVAL
end
end
if defined?(Spec)
class << self
alias_method :test, :it
end
end
end
end
unless defined?(Spec)
# test "verify something" do
# ...
# end
def test(name, &block)
test_name = "test_#{name.gsub(/\s+/,'_')}".to_sym
defined = instance_method(test_name) rescue false
raise "#{test_name} is already defined in #{self}" if defined
if block_given?
define_method(test_name, &block)
else
define_method(test_name) do
flunk "No implementation provided for #{name}"
end
end
end
end
end
end
end
|