File: active_support/testing/declarative.rb

Overview
Module Structure
Code

Overview

Module Structure

  module: <Toplevel Module>
  module: ActiveSupport#1
  module: Testing#2
  module: Declarative#3
has properties
method: test / 2 #7

Code

   1  module ActiveSupport
   2    module Testing
   3      module Declarative
   4        # test "verify something" do
   5        #   ...
   6        # end
   7        def test(name, &block)
   8          test_name = "test_#{name.gsub(/\s+/,'_')}".to_sym
   9          defined = instance_method(test_name) rescue false
  10          raise "#{test_name} is already defined in #{self}" if defined
  11          if block_given?
  12            define_method(test_name, &block)
  13          else
  14            define_method(test_name) do
  15              flunk "No implementation provided for #{name}"
  16            end
  17          end
  18        end
  19      end
  20    end
  21  end