Add a define to add local filters
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
require File.join(File.dirname(__FILE__), '..', 'spec_helper.rb')
|
||||
|
||||
describe 'fail2ban::filter' do
|
||||
|
||||
let(:title) { 'fail2ban::filter' }
|
||||
let(:node) { 'rspec.example42.com' }
|
||||
let(:facts) do
|
||||
{
|
||||
:ipaddress => '10.42.42.42',
|
||||
}
|
||||
end
|
||||
|
||||
describe 'Test filter define is called with no options' do
|
||||
let(:params) do
|
||||
{
|
||||
:filtername => 'sample1',
|
||||
}
|
||||
end
|
||||
let(:expected) do
|
||||
"# This file is managed by Puppet. DO NOT EDIT.
|
||||
#
|
||||
[INCLUDES]
|
||||
|
||||
|
||||
[Definition]
|
||||
|
||||
failregex =
|
||||
ignoreregex =
|
||||
|
||||
"
|
||||
end
|
||||
|
||||
it { should contain_file('sample1.local').with_path('/etc/fail2ban/filter.d/sample1.local').with_content(expected) }
|
||||
end
|
||||
|
||||
describe 'Test filter.local is created with all options' do
|
||||
let(:params) do
|
||||
{
|
||||
:filtername => 'sample2',
|
||||
:filterfailregex => ['first_fail_regex','second_fail_regex','complex[filter]'],
|
||||
:filterignoreregex => 'now_ignore',
|
||||
:filterbefore => 'add_before',
|
||||
:filterdefinitionvars => ['a = 1','b = 2', 'not c'],
|
||||
}
|
||||
end
|
||||
let(:expected) do
|
||||
"# This file is managed by Puppet. DO NOT EDIT.
|
||||
#
|
||||
[INCLUDES]
|
||||
|
||||
before = add_before
|
||||
[Definition]
|
||||
|
||||
failregex = first_fail_regex
|
||||
\tsecond_fail_regex
|
||||
\tcomplex[filter]
|
||||
ignoreregex = now_ignore
|
||||
|
||||
a = 1
|
||||
b = 2
|
||||
not c
|
||||
"
|
||||
end
|
||||
|
||||
it { should contain_file('sample2.local').with_path('/etc/fail2ban/filter.d/sample2.local').with_content(expected) }
|
||||
it { should contain_file('sample2.local').without_source }
|
||||
end
|
||||
|
||||
describe 'Test filter define is called with a source file' do
|
||||
let(:params) do
|
||||
{
|
||||
:filtername => 'sample3',
|
||||
:filtersource => 'puppet:///some/path/to/source',
|
||||
}
|
||||
end
|
||||
|
||||
it { should contain_file('sample3.local').with_path('/etc/fail2ban/filter.d/sample3.local').with_source('puppet:///some/path/to/source') }
|
||||
it { should contain_file('sample3.local').without_template }
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user