Merge "Initial rubocop support for ChefSpec tests."

This commit is contained in:
Jenkins 2014-01-13 10:35:50 +00:00 committed by Gerrit Code Review
commit aa9f7a0bf0
20 changed files with 130 additions and 44 deletions

View File

@ -1,8 +1,9 @@
# Strainerfile
rubocop: bundle exec rubocop $SANDBOX/$COOKBOOK/Gemfile
rubocop: bundle exec rubocop $SANDBOX/$COOKBOOK/attributes/
rubocop: bundle exec rubocop $SANDBOX/$COOKBOOK/metadata.rb
rubocop: bundle exec rubocop $SANDBOX/$COOKBOOK/recipes/
rubocop: bundle exec rubocop $SANDBOX/$COOKBOOK/Gemfile --config $SANDBOX/$COOKBOOK/.rubocop.yml
rubocop: bundle exec rubocop $SANDBOX/$COOKBOOK/metadata.rb --config $SANDBOX/$COOKBOOK/.rubocop.yml
rubocop: bundle exec rubocop $SANDBOX/$COOKBOOK/attributes/ --config $SANDBOX/$COOKBOOK/attributes/.rubocop.yml
rubocop: bundle exec rubocop $SANDBOX/$COOKBOOK/recipes/ --config $SANDBOX/$COOKBOOK/recipes/.rubocop.yml
rubocop: bundle exec rubocop $SANDBOX/$COOKBOOK/spec/ --config $SANDBOX/$COOKBOOK/spec/.rubocop.yml
# rubocop: bundle exec rubocop $SANDBOX/$COOKBOOK
# may want to add rubocop check for Berksfile and Gemfile
knife test: bundle exec knife cookbook test $COOKBOOK

View File

@ -21,6 +21,7 @@ Since there are slight style differences between the coding of attributes, recip
[Gemfile and metadata.rb](.rubocop.yml)
[attributes/*.rb](attributes/.rubocop.yml)
[recipes/.rubocop.yml](recipes/.rubocop.yml)
[spec/.rubocop.yml](spec/.rubocop.yml)
## Knife ##

17
spec/.rubocop-todo.yml Normal file
View File

@ -0,0 +1,17 @@
# This configuration was generated by `rubocop --auto-gen-config`.
# The point is for the user to remove these configuration records
# one by one as the offences are removed from the code base.
HashSyntax:
Enabled: false
MethodLength:
Enabled: false
StringLiterals:
Enabled: false
### in the .rubocop.yml
# embedded attributes make for long lines
LineLength:
Enabled: false

3
spec/.rubocop.yml Normal file
View File

@ -0,0 +1,3 @@
# embedded attributes make for long lines
LineLength:
Enabled: false

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::api" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::api" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::api" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::cinder-common" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::cinder-common" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::cinder-common" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::default" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::identity_registration" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::scheduler" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::scheduler" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::scheduler" do
@ -54,9 +58,9 @@ describe "openstack-block-storage::scheduler" do
end
it "creates cron metering default" do
::Chef::Recipe.any_instance.stub(:search).
with(:node, "roles:os-block-storage-scheduler").
and_return([OpenStruct.new(:name => "fauxhai.local")])
::Chef::Recipe.any_instance.stub(:search)
.with(:node, "roles:os-block-storage-scheduler")
.and_return([OpenStruct.new(:name => "fauxhai.local")])
chef_run = ::ChefSpec::Runner.new ::UBUNTU_OPTS do |n|
n.set["openstack"]["metering"] = true
end
@ -75,9 +79,9 @@ describe "openstack-block-storage::scheduler" do
it "creates cron metering custom" do
crontests = [[:minute, '50'], [:hour, '23'], [:day, '6'],
[:weekday, '5'], [:month, '11'], [:user, 'foobar']]
::Chef::Recipe.any_instance.stub(:search).
with(:node, "roles:os-block-storage-scheduler").
and_return([OpenStruct.new(:name => "foobar")])
::Chef::Recipe.any_instance.stub(:search)
.with(:node, "roles:os-block-storage-scheduler")
.and_return([OpenStruct.new(:name => "foobar")])
chef_run = ::ChefSpec::Runner.new ::UBUNTU_OPTS do |n|
n.set["openstack"]["metering"] = true
crontests.each do |k, v|

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require "chefspec"
require "chefspec/berkshelf"
require "chef/application"
@ -21,20 +25,20 @@ require_relative "support/matcher"
}
def block_storage_stubs
::Chef::Recipe.any_instance.stub(:rabbit_servers).
and_return "1.1.1.1:5672,2.2.2.2:5672"
::Chef::Recipe.any_instance.stub(:secret).
with("secrets", "openstack_identity_bootstrap_token").
and_return "bootstrap-token"
::Chef::Recipe.any_instance.stub(:db_password).and_return String.new
::Chef::Recipe.any_instance.stub(:user_password).and_return String.new
::Chef::Recipe.any_instance.stub(:user_password).
with("guest").
and_return "rabbit-pass"
::Chef::Recipe.any_instance.stub(:service_password).and_return String.new
::Chef::Recipe.any_instance.stub(:service_password).
with("openstack-block-storage").
and_return "cinder-pass"
::Chef::Recipe.any_instance.stub(:rabbit_servers)
.and_return "1.1.1.1:5672,2.2.2.2:5672"
::Chef::Recipe.any_instance.stub(:secret)
.with("secrets", "openstack_identity_bootstrap_token")
.and_return "bootstrap-token"
::Chef::Recipe.any_instance.stub(:db_password).and_return ''
::Chef::Recipe.any_instance.stub(:user_password).and_return ''
::Chef::Recipe.any_instance.stub(:user_password)
.with("guest")
.and_return "rabbit-pass"
::Chef::Recipe.any_instance.stub(:service_password).and_return ''
::Chef::Recipe.any_instance.stub(:service_password)
.with("openstack-block-storage")
.and_return "cinder-pass"
::Chef::Application.stub(:fatal!)
end
@ -44,7 +48,7 @@ def expect_runs_openstack_common_logging_recipe
end
end
def expect_creates_cinder_conf service, user, group, action=:restart
def expect_creates_cinder_conf(service, user, group, action = :restart)
describe "cinder.conf" do
before do
@file = @chef_run.template "/etc/cinder/cinder.conf"
@ -65,7 +69,7 @@ def expect_creates_cinder_conf service, user, group, action=:restart
end
end
def expect_creates_policy_json service, user, group, action=:restart
def expect_creates_policy_json(service, user, group, action = :restart)
describe "policy.json" do
before do
@file = @chef_run.template "/etc/cinder/policy.json"

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
def upgrade_python_pip(pkgname)
ChefSpec::Matchers::ResourceMatcher.new(:python_pip, :upgrade, pkgname)
end

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::volume" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::volume" do

View File

@ -1,3 +1,7 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-block-storage
require_relative "spec_helper"
describe "openstack-block-storage::volume" do
@ -60,8 +64,8 @@ describe "openstack-block-storage::volume" do
end
it "configures netapp dfm password" do
::Chef::Recipe.any_instance.stub(:service_password).with("netapp").
and_return "netapp-pass"
::Chef::Recipe.any_instance.stub(:service_password).with("netapp")
.and_return "netapp-pass"
chef_run = ::ChefSpec::Runner.new ::UBUNTU_OPTS do |n|
n.set["openstack"]["block-storage"]["volume"]["driver"] = "cinder.volume.drivers.netapp.iscsi.NetAppISCSIDriver"
end
@ -72,8 +76,8 @@ describe "openstack-block-storage::volume" do
end
it "configures rbd password" do
::Chef::Recipe.any_instance.stub(:service_password).with("rbd").
and_return "rbd-pass"
::Chef::Recipe.any_instance.stub(:service_password).with("rbd")
.and_return "rbd-pass"
chef_run = ::ChefSpec::Runner.new ::UBUNTU_OPTS do |n|
n.set["openstack"]["block-storage"]["volume"]["driver"] = "cinder.volume.drivers.RBDDriver"
end