28 lines
876 B
Ruby
28 lines
876 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))
|
|
provider_double = instance_double('Provider::Ec2',
|
|
validate_stack_template: true,
|
|
store_stack_template: {'url' => 'template_url'}
|
|
)
|
|
allow(Provider::ProviderFactory).to receive(:get) { provider_double }
|
|
end
|
|
|
|
it_behaves_like 'stack template'
|
|
|
|
it 'uploads file to S3' do
|
|
result = described_class.create('id' => 'foo',
|
|
'template_body' => '{}',
|
|
'owner' => 'root',
|
|
'provider' => 'ec2'
|
|
)
|
|
expect(result).to be_an_instance_of(described_class)
|
|
expect(result.template_url).to eq 'template_url'
|
|
end
|
|
|
|
end |