fog--fog/spec/aws/requests/simpledb/get_attributes_spec.rb

48 lines
1.3 KiB
Ruby

require File.dirname(__FILE__) + '/../../../spec_helper'
describe 'SimpleDB.get_attributes' do
describe 'success' do
before(:each) do
@domain_name = "fog_domain_#{Time.now.to_i}"
sdb.create_domain(@domain_name)
end
after(:each) do
sdb.delete_domain(@domain_name)
end
it 'should have no attributes for foo before put_attributes' do
eventually do
actual = sdb.get_attributes(@domain_name, 'foo')
actual.body['Attributes'].should be_empty
end
end
it 'should have attributes for foo after put_attributes' do
sdb.put_attributes(@domain_name, 'foo', { :bar => :baz })
eventually do
actual = sdb.get_attributes(@domain_name, 'foo')
actual.body['Attributes'].should == { 'bar' => ['baz'] }
end
end
end
describe 'failure' do
it 'should raise a BadRequest error if the domain does not exist' do
lambda {
sdb.get_attributes('notadomain', 'notanattribute')
}.should raise_error(Excon::Errors::BadRequest)
end
it 'should not raise an error if the attribute does not exist' do
@domain_name = "fog_domain_#{Time.now.to_i}"
sdb.create_domain(@domain_name)
sdb.get_attributes(@domain_name, 'notanattribute')
sdb.delete_domain(@domain_name)
end
end
end