Sha256: a2dc2e100f207dfd9fa59607b0254a76a1f67d57a32f8d79aa9339b5d8bcc771
Contents?: true
Size: 1.07 KB
Versions: 44
Compression:
Stored size: 1.07 KB
Contents
require 'mocha/parameter_matchers/base' module Mocha module ParameterMatchers # :call-seq: regexp_matches(regular_expression) -> parameter_matcher # # Matches any object that matches +regular_expression+. # object = mock() # object.expects(:method_1).with(regexp_matches(/e/)) # object.method_1('hello') # # no error raised # # object = mock() # object.expects(:method_1).with(regexp_matches(/a/)) # object.method_1('hello') # # error raised, because method_1 was not called with a parameter that matched the # # regular expression def regexp_matches(regexp) RegexpMatches.new(regexp) end class RegexpMatches < Base # :nodoc: def initialize(regexp) @regexp = regexp end def matches?(available_parameters) parameter = available_parameters.shift return false unless parameter.respond_to?(:=~) parameter =~ @regexp end def mocha_inspect "regexp_matches(#{@regexp.mocha_inspect})" end end end end
Version data entries
44 entries across 39 versions & 7 rubygems