Test cleanups for chefspec 1.3.0

ChefSpec 1.3.0 allows tests to evaluate guards.  Wired in
this cookbook to use that functionality.  Made tests a
bit clearer, and better utilize the block_storage_stubs.

Change-Id: Ib2e3ee8e00bdc5fb5dcda6b48beb0c405e9d8b92
This commit is contained in:
John Dewey 2013-06-07 13:55:24 -07:00
parent 16d36e2acc
commit e2fc07597b
11 changed files with 44 additions and 46 deletions

View File

@ -3,6 +3,6 @@ source "https://rubygems.org"
gem "chef", "~> 11.4.4"
gem "json", "<= 1.7.7" # chef 11 dependency
gem "berkshelf", "~> 1.4.5"
gem "chefspec", "~> 1.2.0"
gem "chefspec", "~> 1.3.0"
gem "foodcritic"
gem "strainer"

View File

@ -42,7 +42,7 @@ GEM
ohai (>= 0.6.0)
rest-client (>= 1.0.4, < 1.7.0)
yajl-ruby (~> 1.1)
chefspec (1.2.0)
chefspec (1.3.0)
chef (>= 10.0)
erubis
fauxhai (>= 0.1.1, < 2.0)
@ -191,7 +191,7 @@ PLATFORMS
DEPENDENCIES
berkshelf (~> 1.4.5)
chef (~> 11.4.4)
chefspec (~> 1.2.0)
chefspec (~> 1.3.0)
foodcritic
json (<= 1.7.7)
strainer

View File

@ -1,9 +1,9 @@
require_relative "spec_helper"
describe "openstack-block-storage::api" do
before { block_storage_stubs }
describe "redhat" do
before do
block_storage_stubs
@chef_run = ::ChefSpec::ChefRunner.new ::REDHAT_OPTS
@chef_run.converge "openstack-block-storage::api"
end

View File

@ -1,12 +1,12 @@
require_relative "spec_helper"
describe "openstack-block-storage::api" do
before { block_storage_stubs }
describe "ubuntu" do
before do
block_storage_stubs
@chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS
@node = @chef_run.node
@node.set["openstack"]["block-storage"]["syslog"]["use"] = true
@chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS do |n|
n.set["openstack"]["block-storage"]["syslog"]["use"] = true
end
@chef_run.converge "openstack-block-storage::api"
end
@ -65,11 +65,11 @@ describe "openstack-block-storage::api" do
end
it "has rbd driver settings" do
chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS
node = chef_run.node
node.set["openstack"]["block-storage"]["volume"] = {
"driver" => "cinder.volume.drivers.RBDDriver"
}
chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS do |n|
n.set["openstack"]["block-storage"]["volume"] = {
"driver" => "cinder.volume.drivers.RBDDriver"
}
end
chef_run.converge "openstack-block-storage::api"
expect(chef_run).to create_file_with_content @file,
@ -79,11 +79,11 @@ describe "openstack-block-storage::api" do
end
it "has netapp driver settings" do
chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS
node = chef_run.node
node.set["openstack"]["block-storage"]["volume"] = {
"driver" => "cinder.volume.drivers.netapp.NetAppISCSIDriver"
}
chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS do |n|
n.set["openstack"]["block-storage"]["volume"] = {
"driver" => "cinder.volume.drivers.netapp.NetAppISCSIDriver"
}
end
chef_run.converge "openstack-block-storage::api"
expect(chef_run).to create_file_with_content @file,
@ -95,6 +95,7 @@ describe "openstack-block-storage::api" do
it "runs db migrations" do
cmd = "cinder-manage db sync"
expect(@chef_run).to execute_command cmd
end
@ -118,7 +119,7 @@ describe "openstack-block-storage::api" do
"signing_dir = /var/cache/cinder/api"
end
it "notifies nova-api-ec2 restart" do
it "notifies cinder-api restart" do
expect(@file).to notify "service[cinder-api]", :restart
end
end

View File

@ -1,11 +1,11 @@
require_relative "spec_helper"
describe "openstack-block-storage::cinder-common" do
before { block_storage_stubs }
before do
block_storage_stubs
@chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS
@node = @chef_run.node
@node.set["openstack"]["block-storage"]["syslog"]["use"] = true
@chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS do |n|
n.set["openstack"]["block-storage"]["syslog"]["use"] = true
end
@chef_run.converge "openstack-block-storage::cinder-common"
end
@ -21,6 +21,5 @@ describe "openstack-block-storage::cinder-common" do
it "has proper modes" do
expect(sprintf("%o", @file.mode)).to eq "644"
end
end
end

View File

@ -2,11 +2,11 @@ require_relative "spec_helper"
describe "openstack-block-storage::identity_registration" do
before do
block_storage_stubs
@identity_register_mock = double "identity_register"
end
it "registers cinder volume service" do
block_storage_stubs
::Chef::Recipe.any_instance.stub(:openstack_identity_register)
::Chef::Recipe.any_instance.should_receive(:openstack_identity_register).
with("Register Cinder Volume Service") do |&arg|
@ -39,7 +39,6 @@ describe "openstack-block-storage::identity_registration" do
end
it "registers cinder volume endpoint" do
block_storage_stubs
::Chef::Recipe.any_instance.stub(:openstack_identity_register)
::Chef::Recipe.any_instance.should_receive(:openstack_identity_register).
with("Register Cinder Volume Endpoint") do |&arg|
@ -72,7 +71,6 @@ describe "openstack-block-storage::identity_registration" do
end
it "registers service user" do
block_storage_stubs
::Chef::Recipe.any_instance.stub(:openstack_identity_register)
::Chef::Recipe.any_instance.should_receive(:openstack_identity_register).
with("Register Cinder Service User") do |&arg|
@ -99,7 +97,6 @@ describe "openstack-block-storage::identity_registration" do
end
it "grants admin role to service user for service tenant" do
block_storage_stubs
::Chef::Recipe.any_instance.stub(:openstack_identity_register)
::Chef::Recipe.any_instance.should_receive(:openstack_identity_register).
with("Grant service Role to Cinder Service User for Cinder Service Tenant") do |&arg|

View File

@ -1,9 +1,9 @@
require_relative "spec_helper"
describe "openstack-block-storage::scheduler" do
before { block_storage_stubs }
describe "redhat" do
before do
block_storage_stubs
@chef_run = ::ChefSpec::ChefRunner.new ::REDHAT_OPTS
@chef_run.converge "openstack-block-storage::scheduler"
end

View File

@ -1,12 +1,12 @@
require_relative "spec_helper"
describe "openstack-block-storage::scheduler" do
before { block_storage_stubs }
describe "ubuntu" do
before do
block_storage_stubs
@chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS
@node = @chef_run.node
@node.set["openstack"]["block-storage"]["syslog"]["use"] = true
@chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS do |n|
n.set["openstack"]["block-storage"]["syslog"]["use"] = true
end
@chef_run.converge "openstack-block-storage::scheduler"
end

View File

@ -2,13 +2,13 @@ require "chefspec"
::LOG_LEVEL = :fatal
::REDHAT_OPTS = {
:platform => "redhat",
:version => "6.3",
:platform => "redhat",
:version => "6.3",
:log_level => ::LOG_LEVEL
}
::UBUNTU_OPTS = {
:platform => "ubuntu",
:version => "12.04",
:platform => "ubuntu",
:version => "12.04",
:log_level => ::LOG_LEVEL
}
@ -48,7 +48,7 @@ def expect_creates_cinder_conf service, action=:restart
expect(sprintf("%o", @file.mode)).to eq "644"
end
it "notifies nova-api-ec2 restart" do
it "notifies service restart" do
expect(@file).to notify service, action
end
end
@ -68,7 +68,7 @@ def expect_creates_policy_json service, action=:restart
expect(sprintf("%o", @file.mode)).to eq "644"
end
it "notifies nova-api-ec2 restart" do
it "notifies service restart" do
expect(@file).to notify service, action
end
end

View File

@ -1,9 +1,9 @@
require_relative "spec_helper"
describe "openstack-block-storage::volume" do
before { block_storage_stubs }
describe "redhat" do
before do
block_storage_stubs
@chef_run = ::ChefSpec::ChefRunner.new ::REDHAT_OPTS
@chef_run.converge "openstack-block-storage::volume"
end
@ -32,6 +32,7 @@ describe "openstack-block-storage::volume" do
it "has redhat include" do
file = "/etc/tgt/targets.conf"
expect(@chef_run).to create_file_with_content file,
"include /var/lib/cinder/volumes/*"
expect(@chef_run).not_to create_file_with_content file,

View File

@ -1,12 +1,12 @@
require_relative "spec_helper"
describe "openstack-block-storage::volume" do
before { block_storage_stubs }
describe "ubuntu" do
before do
block_storage_stubs
@chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS
@node = @chef_run.node
@node.set["openstack"]["block-storage"]["syslog"]["use"] = true
@chef_run = ::ChefSpec::ChefRunner.new ::UBUNTU_OPTS do |n|
n.set["openstack"]["block-storage"]["syslog"]["use"] = true
end
@chef_run.converge "openstack-block-storage::volume"
end
@ -35,8 +35,8 @@ describe "openstack-block-storage::volume" do
n.set["openstack"]["block-storage"]["volume"]["driver"] = "cinder.volume.drivers.netapp.NetAppISCSIDriver"
end
chef_run.converge "openstack-block-storage::volume"
n = chef_run.node["openstack"]["block-storage"]["netapp"]["dfm_password"]
expect(n).to eq "netapp-pass"
end
@ -47,8 +47,8 @@ describe "openstack-block-storage::volume" do
n.set["openstack"]["block-storage"]["volume"]["driver"] = "cinder.volume.drivers.RBDDriver"
end
chef_run.converge "openstack-block-storage::volume"
n = chef_run.node["openstack"]["block-storage"]["rbd_secret_uuid"]
expect(n).to eq "rbd-pass"
end