Files
cookbook-openstack-block-st…/spec/api-opensuse_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

43 lines
1.3 KiB
Ruby

# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::api" do
before { block_storage_stubs }
describe "opensuse" do
before do
@chef_run = ::ChefSpec::Runner.new ::OPENSUSE_OPTS
@chef_run.converge "openstack-block-storage::api"
end
it "installs cinder api packages" do
expect(@chef_run).to upgrade_package "openstack-cinder-api"
end
it "installs mysql python packages by default" do
expect(@chef_run).to upgrade_package "python-mysql"
end
it "installs postgresql python packages if explicitly told" do
chef_run = ::ChefSpec::Runner.new ::OPENSUSE_OPTS
node = chef_run.node
node.set["openstack"]["db"]["volume"]["db_type"] = "postgresql"
chef_run.converge "openstack-block-storage::api"
expect(chef_run).to upgrade_package "python-psycopg2"
expect(chef_run).not_to upgrade_package "python-mysql"
end
it "starts cinder api on boot" do
expect(@chef_run).to enable_service "openstack-cinder-api"
end
expect_creates_policy_json(
"service[cinder-api]", "openstack-cinder", "openstack-cinder")
expect_creates_cinder_conf(
"service[cinder-api]", "openstack-cinder", "openstack-cinder")
end
end