Sha256: ff782fc3a5e9d7385bb0cb1f053ced8968d7987355468193ffc3c64bef2969ae
Contents?: true
Size: 1.05 KB
Versions: 9
Compression:
Stored size: 1.05 KB
Contents
module Typhoeus class Hydra module Stubbing module SharedMethods def stub(method, url, options = {}) stubs << HydraMock.new(url, method, options) stubs.last end def clear_stubs self.stubs = [] end def find_stub_from_request(request) stubs.detect { |stub| stub.matches?(request) } end def self.extended(base) class << base attr_accessor :stubs end base.stubs = [] end end def self.included(base) base.extend(SharedMethods) base.class_eval do attr_accessor :stubs end end def assign_to_stub(request) m = find_stub_from_request(request) # Fallback to global stubs. m ||= self.class.find_stub_from_request(request) if m m.add_request(request) @active_stubs << m m else nil end end private :assign_to_stub include SharedMethods end end end
Version data entries
9 entries across 9 versions & 3 rubygems