7c7195ba33
The current MySQL module is hard to modify, test, and drop in replacement components to. This work starts out by refactoring the bindings support in MySQL to a completely seperate bindings class in order to reduce the amount of parameters in the main class for a feature that is infrequently used. In addition to this start the movement of client configuration and packages to the mysql::client::* namespace.
54 lines
1.3 KiB
Ruby
54 lines
1.3 KiB
Ruby
require 'spec_helper'
|
|
|
|
describe 'mysql::bindings::java' do
|
|
|
|
describe 'on a debian based os' do
|
|
let :facts do
|
|
{ :osfamily => 'Debian', :root_home => '/root'}
|
|
end
|
|
it { should contain_package('mysql-connector-java').with(
|
|
:name => 'libmysql-java',
|
|
:ensure => 'present'
|
|
)}
|
|
end
|
|
|
|
describe 'on a freebsd based os' do
|
|
let :facts do
|
|
{ :osfamily => 'FreeBSD', :root_home => '/root'}
|
|
end
|
|
it { should contain_package('mysql-connector-java').with(
|
|
:name => 'databases/mysql-connector-java',
|
|
:ensure => 'present'
|
|
)}
|
|
end
|
|
|
|
describe 'on a redhat based os' do
|
|
let :facts do
|
|
{:osfamily => 'RedHat', :root_home => '/root'}
|
|
end
|
|
it { should contain_package('mysql-connector-java').with(
|
|
:name => 'mysql-connector-java',
|
|
:ensure => 'present'
|
|
)}
|
|
describe 'when parameters are supplied' do
|
|
let :params do
|
|
{:package_ensure => 'latest', :package_name => 'java-mysql'}
|
|
end
|
|
it { should contain_package('mysql-connector-java').with(
|
|
:name => 'java-mysql',
|
|
:ensure => 'latest'
|
|
)}
|
|
end
|
|
end
|
|
|
|
describe 'on any other os' do
|
|
let :facts do
|
|
{:osfamily => 'foo', :root_home => '/root'}
|
|
end
|
|
|
|
it 'should fail' do
|
|
expect { subject }.to raise_error(/Unsupported osfamily: foo/)
|
|
end
|
|
end
|
|
|
|
end
|