Sha256: 45c8894e4d77714f00746552ef20d66c53b77537dfd9846a521bb36a4157ffe5

Contents?: true

Size: 1.98 KB

Versions: 3

Compression:

Stored size: 1.98 KB

Contents

Shindo.tests('Google::Storage | bucket requests', ['google']) do

  tests('success') do

    @bucket_format = {
      'CommonPrefixes' => [],
      'IsTruncated'     => Fog::Boolean,
      'Marker'          => NilClass,
      'Name'            => String,
      'Prefix'          => NilClass,
      'Contents'        => [{
        'ETag'          => String,
        'Key'           => String,
        'LastModified'  => Time,
        'Owner' => {
          'DisplayName' => String,
          'ID'          => String
        },
        'Size' => Integer,
        'StorageClass'  => String
      }]
    }

    @service_format = {
      'Buckets' => [{
        'CreationDate'  => Time,
        'Name'          => String,
      }],
      'Owner'   => {
        'ID'          => String
      }
    }

    tests("#put_bucket('fogbuckettests')").succeeds do
      Google[:storage].put_bucket('fogbuckettests')
    end

    tests("#get_service").formats(@service_format) do
      Google[:storage].get_service.body
    end

    file = Google[:storage].directories.get('fogbuckettests').files.create(:body => 'y', :key => 'x')

    tests("#get_bucket('fogbuckettests)").formats(@bucket_format) do
      Google[:storage].get_bucket('fogbuckettests').body
    end

    file.destroy

    tests("#delete_bucket('fogbuckettests')").succeeds do
      Google[:storage].delete_bucket('fogbuckettests')
    end

  end

  tests('failure') do

    tests("#delete_bucket('fognonbucket')").raises(Excon::Errors::NotFound) do
      Google[:storage].delete_bucket('fognonbucket')
    end

    @bucket = Google[:storage].directories.create(:key => 'fognonempty')
    @file = @bucket.files.create(:key => 'foo', :body => 'bar')

    tests("#delete_bucket('fognonempty')").raises(Excon::Errors::Conflict) do
      Google[:storage].delete_bucket('fognonempty')
    end

    @file.destroy
    @bucket.destroy

    tests("#get_bucket('fognonbucket')").raises(Excon::Errors::NotFound) do
      Google[:storage].get_bucket('fognonbucket')
    end

  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
fog-0.8.2 tests/storage/requests/google/bucket_tests.rb
fog-0.8.1 tests/storage/requests/google/bucket_tests.rb
fog-0.8.0 tests/storage/requests/google/bucket_tests.rb