38 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| require 'db/mongo/models/deploy_env/deploy_env_openstack'
 | |
| require_relative 'shared_deploy_env_specs'
 | |
| require_relative 'shared_cloud_deploy_env_specs'
 | |
| 
 | |
| RSpec.describe Devops::Model::DeployEnvOpenstack, type: :model do
 | |
|   let(:env) { build(:deploy_env_openstack) }
 | |
| 
 | |
|   describe 'it inherits from cloud deploy_env', stubbed_connector: true, stubbed_logger: true do
 | |
|     before do
 | |
|       provider_double = instance_double('Provider::Openstack',
 | |
|         flavors: [{'id' => 'flavor'}],
 | |
|         networks: [{'default' => {'vpcId' => 'foo'}}],
 | |
|         groups: {'default' => nil},
 | |
|         images: [{'id' => 'image'}]
 | |
|       )
 | |
|       allow(Provider::ProviderFactory).to receive(:providers) { %w(openstack) }
 | |
|       allow(Provider::ProviderFactory).to receive(:get) { provider_double }
 | |
|       allow(stubbed_connector).to receive(:users_names) { %w(root) }
 | |
|       allow(stubbed_connector).to receive(:available_images) { %w(image) }
 | |
|       allow(stubbed_connector).to receive(:stack_templates) { [build(:stack_template_openstack, id: 'template')] }
 | |
|     end
 | |
| 
 | |
|     it_behaves_like 'deploy env'
 | |
|     it_behaves_like 'cloud deploy env'
 | |
|   end
 | |
| 
 | |
|   describe '.create' do
 | |
|     it 'returns instance of DeployEnvOpenstack' do
 | |
|       expect(described_class.create({})).to be_an_instance_of(described_class)
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   describe '#subnets_filter' do
 | |
|     it 'always returns nil' do
 | |
|       expect(env.subnets_filter).to be nil
 | |
|     end
 | |
|   end
 | |
| end |