91 lines
2.1 KiB
Ruby
91 lines
2.1 KiB
Ruby
|
require 'spec_helper_system'
|
||
|
|
||
|
describe 'mysql::bindings class' do
|
||
|
let(:os) {
|
||
|
node.facts['osfamily']
|
||
|
}
|
||
|
|
||
|
case node.facts['osfamily']
|
||
|
when 'RedHat'
|
||
|
java_package = 'mysql-connector-java'
|
||
|
perl_package = 'perl-DBD-MySQL'
|
||
|
python_package = 'MySQL-python'
|
||
|
ruby_package = 'ruby-mysql'
|
||
|
when 'Suse'
|
||
|
java_package = 'mysql-connector-java'
|
||
|
perl_package = 'perl-DBD-MySQL'
|
||
|
python_package = 'python-mysql'
|
||
|
case node.facts['operatingsystem']
|
||
|
when /OpenSuSE/
|
||
|
ruby_package = 'rubygem-mysql'
|
||
|
when /(SLES|SLED)/
|
||
|
ruby_package = 'ruby-mysql'
|
||
|
end
|
||
|
when 'Debian'
|
||
|
java_package = 'libmysql-java'
|
||
|
perl_package = 'libdbd-mysql-perl'
|
||
|
python_package = 'python-mysqldb'
|
||
|
ruby_package = 'libmysql-ruby'
|
||
|
when 'FreeBSD'
|
||
|
java_package = 'databases/mysql-connector-java'
|
||
|
perl_package = 'p5-DBD-mysql'
|
||
|
python_package = 'databases/py-MySQLdb'
|
||
|
ruby_package = 'ruby-mysql'
|
||
|
else
|
||
|
case node.facts['operatingsystem']
|
||
|
when 'Amazon'
|
||
|
java_package = 'mysql-connector-java'
|
||
|
perl_package = 'perl-DBD-MySQL'
|
||
|
python_package = 'MySQL-python'
|
||
|
ruby_package = 'ruby-mysql'
|
||
|
end
|
||
|
end
|
||
|
|
||
|
describe 'running puppet code' do
|
||
|
# Using puppet_apply as a helper
|
||
|
it 'should work with no errors' do
|
||
|
pp = <<-EOS
|
||
|
class { 'mysql::bindings': }
|
||
|
EOS
|
||
|
|
||
|
# Run it twice and test for idempotency
|
||
|
puppet_apply(pp) do |r|
|
||
|
r.exit_code.should_not == 1
|
||
|
r.refresh
|
||
|
r.exit_code.should be_zero
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|
||
|
describe 'enabling bindings' do
|
||
|
it 'should work with no errors' do
|
||
|
puppet_apply(%{
|
||
|
class { 'mysql::bindings':
|
||
|
java_enable => true,
|
||
|
perl_enable => true,
|
||
|
python_enable => true,
|
||
|
ruby_enable => true,
|
||
|
}
|
||
|
})
|
||
|
end
|
||
|
|
||
|
describe package(java_package) do
|
||
|
it { should be_installed }
|
||
|
end
|
||
|
|
||
|
describe package(perl_package) do
|
||
|
it { should be_installed }
|
||
|
end
|
||
|
|
||
|
describe package(python_package) do
|
||
|
it { should be_installed }
|
||
|
end
|
||
|
|
||
|
describe package(ruby_package) do
|
||
|
it { should be_installed }
|
||
|
end
|
||
|
|
||
|
end
|
||
|
|
||
|
end
|