class Fog::OpenStack::Storage::Mock

Public Class Methods

data() click to toggle source
# File lib/fog/openstack/storage.rb, line 64
def self.data
  @data ||= Hash.new do |hash, key|
    hash[key] = {}
  end
end
new(options = {}) click to toggle source
# File lib/fog/openstack/storage.rb, line 74
def initialize(options = {})
  require_mime_types
  @openstack_api_key = options[:openstack_api_key]
  @openstack_username = options[:openstack_username]
  @openstack_management_url = options[:openstack_management_url] || 'http://example:8774/v2/AUTH_1234'

  @openstack_management_uri = URI.parse(@openstack_management_url)
  @path   = @openstack_management_uri.path
  @path.sub!(%r{/$}, '')
end
reset() click to toggle source
# File lib/fog/openstack/storage.rb, line 70
def self.reset
  @data = nil
end

Public Instance Methods

change_account(account) click to toggle source
# File lib/fog/openstack/storage.rb, line 93
def change_account(account)
  @original_path ||= @path
  version_string = @original_path.split('/')[1]
  @path = "/#{version_string}/#{account}"
end
data() click to toggle source
# File lib/fog/openstack/storage.rb, line 85
def data
  self.class.data[@openstack_username]
end
put_object(container, object, data, options = {}) { || ... } click to toggle source
# File lib/fog/openstack/storage/requests/put_object.rb, line 43
def put_object(container, object, data, options = {}, &block)
  dgst = Digest::MD5.new
  if block_given?
    Kernel.loop do
      chunk = yield
      break if chunk.empty?
      dgst.update chunk
    end
  elsif data.kind_of?(String)
    dgst.update data
  else
    dgst.file data
  end
  response = Excon::Response.new
  response.status = 201
  response.body = ''
  response.headers = {'ETag' => dgst.hexdigest}
  response
end
reset_account_name() click to toggle source
# File lib/fog/openstack/storage.rb, line 99
def reset_account_name
  @path = @original_path
end
reset_data() click to toggle source
# File lib/fog/openstack/storage.rb, line 89
def reset_data
  self.class.data.delete(@openstack_username)
end