Sha256: dac5ea6ae4247c98427f7ed9d3c1f8b2afdf7fcab59ec8cadfe92c5856e382bc

Contents?: true

Size: 1.78 KB

Versions: 81

Compression:

Stored size: 1.78 KB

Contents

Shindo.tests('Fog::Network[:openstack] | quota requests', ['openstack']) do

  @tenant_id = Fog::Compute[:openstack].list_tenants.body['tenants'].first['id']
  @quota_format = {
    'subnet'     => Fog::Nullable::Integer,
    'router'     => Fog::Nullable::Integer,
    'port'       => Fog::Nullable::Integer,
    'network'    => Fog::Nullable::Integer,
    'floatingip' => Fog::Nullable::Integer
  }

  @quotas_format = [{
    'subnet'     => Fog::Nullable::Integer,
    'router'     => Fog::Nullable::Integer,
    'port'       => Fog::Nullable::Integer,
    'network'    => Fog::Nullable::Integer,
    'floatingip' => Fog::Nullable::Integer,
    'tenant_id'  => Fog::Nullable::String
  }]

  tests('success') do

    tests('#get_quotas').formats({ 'quotas' => @quotas_format }) do
      Fog::Network[:openstack].get_quotas.body
    end

    tests('#get_quota').formats(@quota_format) do
      @quota = Fog::Network[:openstack].get_quota(@tenant_id).body['quota']
    end

    tests('#update_quota') do

      new_values = @quota.merge({
        'volumes'   => @quota['subnet']/2,
        'snapshots' => @quota['router']/2
      })

      succeeds do
        Fog::Network[:openstack].update_quota(@tenant_id, new_values.clone)
      end

      returns(new_values, 'returns new values') do
        Fog::Network[:openstack].get_quota(@tenant_id).body['quota']
      end

      # set quota back to old values
      succeeds do
        Fog::Network[:openstack].update_quota(@tenant_id, @quota.clone)
      end

      # ensure old values are restored
      returns(@quota, 'old values restored') do
        Fog::Network[:openstack].get_quota(@tenant_id).body['quota']
      end

    end

    tests('#delete_quota') do
      succeeds do
        Fog::Network[:openstack].delete_quota(@tenant_id)
      end
    end

  end
end

Version data entries

81 entries across 81 versions & 7 rubygems

Version Path
fog-openstack-0.1.7 tests/openstack/requests/network/quota_tests.rb
fog-openstack-0.1.6 tests/openstack/requests/network/quota_tests.rb
fog-openstack-0.1.5 tests/openstack/requests/network/quota_tests.rb
fog-openstack-0.1.4 tests/openstack/requests/network/quota_tests.rb
fog-openstack-0.1.3 tests/openstack/requests/network/quota_tests.rb
fog-openstack-0.1.2 tests/openstack/requests/network/quota_tests.rb
fog-openstack-0.1.1 tests/openstack/requests/network/quota_tests.rb
fog-openstack-0.1.0 tests/openstack/requests/network/quota_tests.rb
fog-1.37.0 tests/openstack/requests/network/quota_tests.rb
fog-1.36.0 tests/openstack/requests/network/quota_tests.rb
fog-1.35.0 tests/openstack/requests/network/quota_tests.rb
fog-2.0.0.pre.0 tests/openstack/requests/network/quota_tests.rb
vagrant-cloudstack-1.2.0 vendor/bundle/gems/fog-1.32.0/tests/openstack/requests/network/quota_tests.rb
fog-1.34.0 tests/openstack/requests/network/quota_tests.rb
fog-1.33.0 tests/openstack/requests/network/quota_tests.rb
fog-1.32.0 tests/openstack/requests/network/quota_tests.rb
fog-1.31.0 tests/openstack/requests/network/quota_tests.rb
vagrant-cloudstack-1.1.0 vendor/bundle/gems/fog-1.22.1/tests/openstack/requests/network/quota_tests.rb
fog-1.30.0 tests/openstack/requests/network/quota_tests.rb
fog-1.29.0 tests/openstack/requests/network/quota_tests.rb