Sha256: eed2d6b5a68dc1e88e39d611f70ebb590264c38d8dba247f19485dd644453ca9
Contents?: true
Size: 846 Bytes
Versions: 13
Compression:
Stored size: 846 Bytes
Contents
# frozen_string_literal: true module WebMock class CallbackRegistry @@callbacks = [] def self.add_callback(options, block) @@callbacks << {options: options, block: block} end def self.callbacks @@callbacks end def self.invoke_callbacks(options, request_signature, response) return if @@callbacks.empty? CallbackRegistry.callbacks.each do |callback| except = callback[:options][:except] real_only = callback[:options][:real_requests_only] unless except && except.include?(options[:lib]) if !real_only || options[:real_request] callback[:block].call(request_signature, response) end end end end def self.reset @@callbacks = [] end def self.any_callbacks? !@@callbacks.empty? end end end
Version data entries
13 entries across 13 versions & 4 rubygems