41 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			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
 | 
