module ActiveDelivery::TestDelivery

Public Class Methods

clear() click to toggle source
# File lib/active_delivery/testing.rb, line 29
def clear
  store.clear
end
enable() { || ... } click to toggle source
# File lib/active_delivery/testing.rb, line 6
def enable
  raise ArgumentError, "block is required" unless block_given?
  begin
    clear
    Thread.current.thread_variable_set(:active_delivery_testing, true)
    yield
  ensure
    Thread.current.thread_variable_set(:active_delivery_testing, false)
  end
end
enabled?() click to toggle source
# File lib/active_delivery/testing.rb, line 17
def enabled?
  Thread.current.thread_variable_get(:active_delivery_testing) == true
end
store() click to toggle source
# File lib/active_delivery/testing.rb, line 25
def store
  @store ||= []
end
track(delivery, event, args, options) click to toggle source
# File lib/active_delivery/testing.rb, line 21
def track(delivery, event, args, options)
  store << [delivery, event, args, options]
end

Public Instance Methods

notify(event, *args, **options) click to toggle source
Calls superclass method
# File lib/active_delivery/testing.rb, line 34
def notify(event, *args, **options)
  return super unless test?
  TestDelivery.track(self, event, args, options)
  nil
end
test?() click to toggle source
# File lib/active_delivery/testing.rb, line 40
def test?
  TestDelivery.enabled?
end