module DoSnapshot::RSpec::Environment

Public Instance Methods

default_stub_api() click to toggle source
# File lib/do_snapshot/rspec/environment.rb, line 64
def default_stub_api
  {
    stub_event_done: stub_event_done(event_id),
    stub_droplets: stub_droplets,
    stub_image_destroy1: stub_image_destroy(image_id),
    stub_image_destroy2: stub_image_destroy(image_id2)
  }
end
do_not_send_email() click to toggle source
# File lib/do_snapshot/rspec/environment.rb, line 9
def do_not_send_email
  allow(Pony).to receive(:deliver) { |mail| mail }
end
reset_api_keys() click to toggle source
# File lib/do_snapshot/rspec/environment.rb, line 87
def reset_api_keys
  ENV['DIGITAL_OCEAN_API_KEY']   = nil
  ENV['DIGITAL_OCEAN_CLIENT_ID'] = nil
  ENV['DIGITAL_OCEAN_ACCESS_TOKEN'] = nil
end
reset_singletons() click to toggle source
# File lib/do_snapshot/rspec/environment.rb, line 99
def reset_singletons
  DoSnapshot.configure do |config|
    # config.logger = Logger.new($stdout)
    config.verbose = false
    config.quiet = true
  end
  DoSnapshot.logger = DoSnapshot::Log.new
  DoSnapshot.mailer = DoSnapshot.config.mailer
end
set_api_keys() click to toggle source
# File lib/do_snapshot/rspec/environment.rb, line 93
def set_api_keys
  ENV['DIGITAL_OCEAN_API_KEY']   = api_key
  ENV['DIGITAL_OCEAN_CLIENT_ID'] = client_key
  ENV['DIGITAL_OCEAN_ACCESS_TOKEN'] = access_token
end
stub_all_api(droplets = nil, active = false) click to toggle source
# File lib/do_snapshot/rspec/environment.rb, line 44
def stub_all_api(droplets = nil, active = false)
  drops = []
  droplets ||= [droplet_id]
  droplets.each do |droplet|
    drops.push Hash[
                   stub_droplet: (active ? stub_droplet(droplet) : stub_droplet_inactive(droplet))
               ].merge(stub_droplet_api(droplet))
  end
  stubs = Hash[drops: drops]
  @stubs = stubs.merge(default_stub_api)
end
stub_cleanup() click to toggle source
# File lib/do_snapshot/rspec/environment.rb, line 73
def stub_cleanup
  @stubs ||= {}
  @stubs.each_pair do |_k, v|
    remove_request_stub(v) if v.class == WebMock::RequestStub
    next unless v.class == Array

    v.each do |d|
      d.each_pair do |_dk, dv|
        remove_request_stub(dv) if v.class == WebMock::RequestStub
      end
    end
  end
end
stub_droplet_api(droplet) click to toggle source
# File lib/do_snapshot/rspec/environment.rb, line 56
def stub_droplet_api(droplet)
  {
    stub_droplet_stop: stub_droplet_stop(droplet),
    stub_droplet_start: stub_droplet_start(droplet),
    stub_droplet_snapshot: stub_droplet_snapshot(droplet, snapshot_name)
  }
end