fluke/devops-service/spec/models/stack_template/stack_template_ec2_spec.rb
2016-01-27 11:41:26 +03:00

26 lines
1016 B
Ruby

require 'db/mongo/models/stack_template/stack_template_ec2'
require_relative 'shared_stack_template_specs'
RSpec.describe Devops::Model::StackTemplateEc2, type: :model do
let(:stack_template) { build(:stack_template_ec2) }
before do
allow(Provider::ProviderFactory).to receive(:providers).and_return(%w(ec2))
allow_any_instance_of(Devops::Model::StackTemplateEc2).to receive_message_chain('provider_instance.validate_stack_template') { true }
allow_any_instance_of(Devops::Model::StackTemplateEc2).to receive_message_chain('provider_instance.store_stack_template') { {'url' => nil} }
end
it_behaves_like 'stack template'
it 'uploads file to S3' do
expect_any_instance_of(Devops::Model::StackTemplateEc2).to receive_message_chain('provider_instance.store_stack_template')
params = {
'id' => 'foo',
'template_body' => '{}',
'owner' => 'root',
'provider' => 'ec2'
}
expect(described_class.create(params)).to be_an_instance_of(described_class)
end
end