Sha256: 5004dc29541002dff3c8918aaf9afe583514ec177047d5f46a204aa91b6f25a7

Contents?: true

Size: 1.7 KB

Versions: 53

Compression:

Stored size: 1.7 KB

Contents

Shindo.tests do
  before do
    @old_home = ENV['HOME']
    @old_rc   = ENV['FOG_RC']
    @old_credential = ENV['FOG_CREDENTIAL']
    @old_credentials = Fog.credentials
    Fog.instance_variable_set('@credential_path', nil) # kill memoization
    Fog.instance_variable_set('@credential', nil) # kill memoization
  end

  after do
    ENV['HOME'] = @old_home
    ENV['FOG_RC'] = @old_rc
    ENV['FOG_CREDENTIAL'] = @old_credential
    Fog.credentials = @old_credentials
  end

  tests('credential') do
    returns(:default, "is :default") { Fog.credential }

    returns(:foo, "can be set directly") do
      Fog.credential = "foo"
      Fog.credential
    end

    returns(:bar, "can be set with environment variable") do
      ENV["FOG_CREDENTIAL"] = "bar"
      Fog.credential
    end
  end

  tests('credentials_path') do
    returns('/rc/path', 'FOG_RC takes precedence over HOME') {
      ENV['HOME'] = '/home/path'
      ENV['FOG_RC'] = '/rc/path'
    }

    returns('/expanded/path', 'properly expands paths') {
      ENV['FOG_RC'] = '/expanded/subdirectory/../path'
      Fog.credentials_path
    }

    returns(File.join(ENV['HOME'], '.fog'), 'falls back to home path if FOG_RC not set') {
      ENV.delete('FOG_RC')
      Fog.credentials_path
    }

    returns(nil, 'ignores home path if it does not exist') {
      ENV.delete('FOG_RC')
      ENV['HOME'] = '/no/such/path'
      Fog.credentials_path
    }

    returns(nil, 'File.expand_path raises because of non-absolute path') {
      ENV.delete('FOG_RC')
      ENV['HOME'] = '.'
      Fog.credentials_path
    }

    returns(nil, 'returns nil when neither FOG_RC or HOME are set') {
      ENV.delete('HOME')
      ENV.delete('FOG_RC')
      Fog.credentials_path
    }
  end
end

Version data entries

53 entries across 53 versions & 16 rubygems

Version Path
fog-test-again-1.6.0 tests/core/credential_tests.rb
fog-test-me-1.10.0 tests/core/credential_tests.rb
fog-parser-fix-1.6.0 tests/core/credential_tests.rb
fog-1.10.0 tests/core/credential_tests.rb
fog-1.9.0 tests/core/credential_tests.rb
fog-maestrodev-1.8.0.20130114204828 tests/core/credential_tests.rb
fog-maestrodev-1.8.0.20130111070250 tests/core/credential_tests.rb
fog-maestrodev-1.8.0.20130109172219 tests/core/credential_tests.rb
fog-sgonyea-1.8.1 tests/core/credential_tests.rb
fog-1.8.0 tests/core/credential_tests.rb
fog-maestrodev-1.7.0.20121114190951 tests/core/credential_tests.rb
fog-1.7.0 tests/core/credential_tests.rb
fog-1.6.0 tests/core/credential_tests.rb
fog-1.5.0 tests/core/credential_tests.rb
rackspace-fog-1.4.2 tests/core/credential_tests.rb
fog-1.4.0 tests/core/credential_tests.rb
brightbox-cli-0.18.1 lib/brightbox-cli/vendor/fog/tests/core/credential_tests.rb
michiels-fog-1.3.1 tests/core/credential_tests.rb
ftl-0.2.0 vendor/bundle/gems/fog-1.3.1/tests/core/credential_tests.rb
brightbox-cli-0.18.0 lib/brightbox-cli/vendor/fog/tests/core/credential_tests.rb