Files
cookbook-openstack-block-st…/spec/identity_registration_spec.rb
Matt Ray 230b2ed90e Initial rubocop support for ChefSpec tests.
Per the mailing list thread, introducing Rubocop as a replacement for Tailor.
Assuming Jenkins likes this, more pedantic patches will follow to make Rubocop
happy. So far this is just spacing issues and adding UTF-8 headers, but more
work will need to be done to remove all of the changes for the .rubocop-todo.yml

Addresses: blueprint rubocop-for-block-storage
Change-Id: Ibb11739e452016c101995a371d031faeeb7e7683
2014-01-10 12:53:30 -06:00

87 lines
2.7 KiB
Ruby

# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::identity_registration" do
before do
block_storage_stubs
@chef_run = ::ChefSpec::Runner.new ::UBUNTU_OPTS
@chef_run.converge "openstack-block-storage::identity_registration"
end
it "registers cinder volume service" do
resource = @chef_run.find_resource(
"openstack-identity_register",
"Register Cinder Volume Service"
).to_hash
expect(resource).to include(
:auth_uri => "http://127.0.0.1:35357/v2.0",
:bootstrap_token => "bootstrap-token",
:service_name => "cinder",
:service_type => "volume",
:service_description => "Cinder Volume Service",
:endpoint_region => "RegionOne",
:endpoint_adminurl => "http://127.0.0.1:8776/v1/%(tenant_id)s",
:endpoint_internalurl => "http://127.0.0.1:8776/v1/%(tenant_id)s",
:endpoint_publicurl => "http://127.0.0.1:8776/v1/%(tenant_id)s",
:action => [:create_service]
)
end
it "registers cinder volume endpoint" do
resource = @chef_run.find_resource(
"openstack-identity_register",
"Register Cinder Volume Endpoint"
).to_hash
expect(resource).to include(
:auth_uri => "http://127.0.0.1:35357/v2.0",
:bootstrap_token => "bootstrap-token",
:service_name => "cinder",
:service_type => "volume",
:service_description => "Cinder Volume Service",
:endpoint_region => "RegionOne",
:endpoint_adminurl => "http://127.0.0.1:8776/v1/%(tenant_id)s",
:endpoint_internalurl => "http://127.0.0.1:8776/v1/%(tenant_id)s",
:endpoint_publicurl => "http://127.0.0.1:8776/v1/%(tenant_id)s",
:action => [:create_endpoint]
)
end
it "registers service user" do
resource = @chef_run.find_resource(
"openstack-identity_register",
"Register Cinder Service User"
).to_hash
expect(resource).to include(
:auth_uri => "http://127.0.0.1:35357/v2.0",
:bootstrap_token => "bootstrap-token",
:tenant_name => "service",
:user_name => "cinder",
:user_pass => "cinder-pass",
:user_enabled => true,
:action => [:create_user]
)
end
it "grants admin role to service user for service tenant" do
resource = @chef_run.find_resource(
"openstack-identity_register",
"Grant service Role to Cinder Service User for Cinder Service Tenant"
).to_hash
expect(resource).to include(
:auth_uri => "http://127.0.0.1:35357/v2.0",
:bootstrap_token => "bootstrap-token",
:tenant_name => "service",
:user_name => "cinder",
:role_name => "admin",
:action => [:grant_role]
)
end
end