cookbook-openstack-ops-data.../spec/mysql-server-redhat_spec.rb

47 lines
1.5 KiB
Ruby

# encoding: UTF-8
require_relative 'spec_helper'
describe 'openstack-ops-database::mysql-server' do
describe 'redhat' do
include_context 'database-stubs'
let(:runner) { ChefSpec::Runner.new(REDHAT_OPTS) }
let(:node) { runner.node }
let(:chef_run) do
node.set_unless['mysql'] = {
'server_debian_password' => 'server-debian-password',
'server_root_password' => 'server-root-password',
'server_repl_password' => 'server-repl-password'
}
runner.converge(described_recipe)
end
let(:file) { chef_run.template('/etc/mysql/conf.d/openstack.cnf') }
it 'sets mysql version to 5.5' do
expect(chef_run.node['mysql']['version']).to eql '5.5'
end
it 'creates template /etc/mysql/conf.d/openstack.cnf' do
expect(chef_run).to create_template(file.name).with(
user: 'mysql',
group: 'mysql',
source: 'openstack.cnf.erb'
)
expect(file).to notify('mysql_service[default]')
[/^# This file autogenerated by Chef$/,
/^# Do not edit, changes will be overwritten$/,
/^\[mysqld\]$/,
/^default-storage-engine = InnoDB$/,
/^bind-address = 127.0.0.1$/,
/^innodb_thread_concurrency= 0$/,
/^innodb_commit_concurrency = 0$/,
/^innodb_flush_log_at_trx_commit = 2$/,
/^skip-name-resolve$/,
/^character-set-server = utf8$/].each do |line|
expect(chef_run).to render_file(file.name).with_content(line)
end
end
end
end