38 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
		
		
			
		
	
	
			38 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
|   | require 'db/mongo/connectors/image' | ||
|  | require 'spec/connectors/tester_connector/image' | ||
|  | require_relative 'shared_connectors_context' | ||
|  | 
 | ||
|  | RSpec.describe Connectors::Image, type: :connector do | ||
|  |   set_tester_connector TesterConnector::Image | ||
|  |   include_context 'connectors' | ||
|  |   let(:model_class) { Devops::Model::Image } | ||
|  | 
 | ||
|  |   include_examples 'mongo connector', { | ||
|  |     model_name: :image, | ||
|  |     only: [:insert, :show, :update, :delete], | ||
|  |     field_to_update: :name | ||
|  |   } | ||
|  | 
 | ||
|  |   describe '#images', cleanup_after: :each do | ||
|  |     subject { @connector.images('ec2') } | ||
|  | 
 | ||
|  |     it 'should be empty if collection is empty' do | ||
|  |       expect(subject).to eq [] | ||
|  |     end | ||
|  | 
 | ||
|  |     it "returns array of Model::Key's of given provider" do | ||
|  |       @tester_connector.create(provider: 'ec2') | ||
|  |       @tester_connector.create(provider: 'openstack') | ||
|  |       expect(subject).to be_an_array_of(model_class).and have_size(1) | ||
|  |       expect(subject.first.provider).to eq 'ec2' | ||
|  |     end | ||
|  | 
 | ||
|  |     it 'returns images for both providers if is is unset' do | ||
|  |       @tester_connector.create(provider: 'ec2') | ||
|  |       @tester_connector.create(provider: 'openstack') | ||
|  |       expect(@connector.images.length).to eq 2
 | ||
|  |     end | ||
|  |   end | ||
|  | 
 | ||
|  | end |