fluke/devops-service/spec/connectors/stack_template_connector_spec.rb
2015-12-10 12:33:14 +03:00

41 lines
1.3 KiB
Ruby

require 'db/mongo/connectors/stack_template'
require 'spec/connectors/tester_connector/stack_template'
RSpec.describe Connectors::StackTemplate, type: :connector do
set_tester_connector TesterConnector::StackTemplate
let(:model_class) { Devops::Model::StackTemplateEc2 }
include_examples 'mongo connector', {
model_name: :stack_template,
factory_name: :stack_template_ec2,
only: [:insert, :show, :update, :delete],
field_to_update: :owner
}
describe '#stack_templates' do
subject { @connector.stack_templates('ec2') }
it 'should be empty if collection is empty' do
expect(subject).to eq []
end
it "returns array of stack_templates of given provider" do
@tester_connector.create(provider: 'ec2')
@tester_connector.create(provider: 'openstack')
expect(subject).to be_a(Array)
expect(subject.length).to eq 1
expect(subject.first).to be_an_instance_of(model_class)
expect(subject.first.provider).to eq 'ec2'
@tester_connector.cleanup
end
it 'returns stack_templates for both providers if is is unset' do
@tester_connector.create(provider: 'ec2')
@tester_connector.create(provider: 'openstack')
expect(@connector.stack_templates.length).to eq 2
@tester_connector.cleanup
end
end
end