module ActiveSupport::Testing::Declarative
Public Class Methods
Calls superclass method
# File activesupport/lib/active_support/testing/declarative.rb, line 9
def self.describe(text)
if block_given?
super
else
message = "`describe` without a block is deprecated, please switch to: `def self.name; #{text.inspect}; end`\n"
ActiveSupport::Deprecation.warn message
class_eval " def self.name
"#{text}"
end
", __FILE__, __LINE__ + 1
end
end Public Instance Methods
Helper to define a test method using a String. Under the hood, it replaces spaces with underscores and defines the test method.
test "verify something" do ... end
# File activesupport/lib/active_support/testing/declarative.rb, line 35
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
© 2004–2016 David Heinemeier Hansson
Licensed under the MIT License.