Sha256: 102920339ffe2573817e38a0b45b2cd62374fd1ba9fbe23a27e479b1a9826a98
Contents?: true
Size: 1.77 KB
Versions: 5
Compression:
Stored size: 1.77 KB
Contents
require 'active_support/concern' require 'test/unit/assertions' module RSpec module Rails module SetupAndTeardownAdapter extend ActiveSupport::Concern module ClassMethods # @api private # # Wraps `setup` calls from within Rails' testing framework in `before` # hooks. def setup(*methods) methods.each {|method| before { send method } } end # @api private # # Wraps `teardown` calls from within Rails' testing framework in # `after` hooks. def teardown(*methods) methods.each {|method| after { send method } } end end # @api private def method_name @example end end module TestUnitAssertionAdapter extend ActiveSupport::Concern module ClassMethods # @api private # # Returns the names of assertion methods that we want to expose to # examples without exposing non-assertion methods in Test::Unit or # Minitest. def assertion_method_names Test::Unit::Assertions.public_instance_methods.select{|m| m.to_s =~ /^(assert|flunk)/} + [:build_message] end # @api private def define_assertion_delegators assertion_method_names.each do |m| class_eval <<-CODE def #{m}(*args, &block) assertion_delegator.send :#{m}, *args, &block end CODE end end end class AssertionDelegator include Test::Unit::Assertions end # @api private def assertion_delegator @assertion_delegator ||= AssertionDelegator.new end included do define_assertion_delegators end end end end
Version data entries
5 entries across 5 versions & 1 rubygems