module MiniTestSpecRails::Init::MiniShouldaBehavior

def self.included(klass)

def self.included(klass)
  klass.class_eval do
    class << self
      
      alias :context  :describe
      alias :should   :it
      def setup_with_minitest(*args, &block)
        if args.first.is_a?(Symbol) && !block_given?
          setup_without_minitest(args.first)
        else
          setup_without_minitest { |o| o.instance_eval(&block) }
        end
      end
      alias_method_chain :setup, :minitest
      def teardown_with_minitest(*args, &block)
        if args.first.is_a?(Symbol) && !block_given?
          teardown_without_minitest(args.first)
        else
          teardown_without_minitest { |o| o.instance_eval(&block) }
        end
      end
      alias_method_chain :teardown, :minitest
    end
    extend ClassMethods
  end
end

def setup_with_minitest(*args, &block)

def setup_with_minitest(*args, &block)
  if args.first.is_a?(Symbol) && !block_given?
    setup_without_minitest(args.first)
  else
    setup_without_minitest { |o| o.instance_eval(&block) }
  end
end

def teardown_with_minitest(*args, &block)

def teardown_with_minitest(*args, &block)
  if args.first.is_a?(Symbol) && !block_given?
    teardown_without_minitest(args.first)
  else
    teardown_without_minitest { |o| o.instance_eval(&block) }
  end
end