Module: MiniTest::Should::Base::ClassMethods

Defined in:
lib/minitest/should/base.rb

Instance Method Summary collapse

Instance Method Details

#should(name, &block) ⇒ Object



11
12
13
14
15
16
17
18
# File 'lib/minitest/should/base.rb', line 11

def should(name, &block)
  method_name = [ "test_should_", name.downcase.gsub(/[^a-z0-9\_\s]+/, ' ').strip.gsub(/\s+/, "_") ].join
  if self.test_methods.include?(method_name)
    raise MiniTest::Should::DuplicateMethodError, "Test named `#{method_name}` already exists in #{self.name}." 
  else
    self.send(:define_method, method_name, block)
  end
end