Sha256: 6f96b7cd14d88fe27284d5e560b5f441ffcb75a725c65b85972b11d2211dfcc6

Contents?: true

Size: 1.22 KB

Versions: 2

Compression:

Stored size: 1.22 KB

Contents

require File.dirname(__FILE__) + '/../../../spec_helper'

describe 'S3.get_object' do

  before(:all) do
    @s3 = Fog::AWS::S3.gen
    @s3.put_bucket('foggetobject')
    file = File.open(File.dirname(__FILE__) + '/../../../lorem.txt', 'r')
    @s3.put_object('foggetobject', 'fog_get_object', file)
  end

  after(:all) do
    @s3.delete_object('foggetobject', 'fog_get_object')
    @s3.delete_bucket('foggetobject')
  end

  it 'should return proper attributes' do
    actual = @s3.get_object('foggetobject', 'fog_get_object')
    actual.status.should == 200
    file = File.open(File.dirname(__FILE__) + '/../../../lorem.txt', 'r')
    data = file.read
    actual.body.should == data
    actual.headers['Content-Length'].should == data.length.to_s
    actual.headers['ETag'].should be_a(String)
    actual.headers['Last-Modified'].should be_a(String)
  end

  it 'should raise a NotFound error if the bucket does not exist' do
    lambda {
      @s3.get_object('fognotabucket', 'fog_get_object')
    }.should raise_error(Fog::Errors::NotFound)
  end

  it 'should raise a NotFound error if the object does not exist' do
    lambda {
      @s3.get_object('foggetobject', 'fog_not_an_object')
    }.should raise_error(Fog::Errors::NotFound)
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
geemus-fog-0.0.1 spec/aws/requests/s3/get_object_spec.rb
geemus-fog-0.0.3 spec/aws/requests/s3/get_object_spec.rb