end
end
- # RHEL5 does not support -m socket
- if default['platform'] !~ /el-5/
- describe 'socket' do
- context 'true' do
- it 'applies' do
- pp = <<-EOS
- class { '::firewall': }
- firewall { '585 - test':
- ensure => present,
- proto => tcp,
- port => '585',
- action => accept,
- chain => 'PREROUTING',
- table => 'nat',
- socket => true,
- }
- EOS
+ # RHEL5/SLES does not support -m socket
+ describe 'socket', :unless => (default['platform'] =~ /el-5/ or fact('operatingsystem') == 'SLES') do
+ context 'true' do
+ it 'applies' do
+ pp = <<-EOS
+ class { '::firewall': }
+ firewall { '585 - test':
+ ensure => present,
+ proto => tcp,
+ port => '585',
+ action => accept,
+ chain => 'PREROUTING',
+ table => 'nat',
+ socket => true,
+ }
+ EOS
- apply_manifest(pp, :catch_failures => true)
- end
+ apply_manifest(pp, :catch_failures => true)
+ end
- it 'should contain the rule' do
- shell('iptables-save -t nat') do |r|
- expect(r.stdout).to match(/-A PREROUTING -p tcp -m multiport --ports 585 -m socket -m comment --comment "585 - test" -j ACCEPT/)
- end
+ it 'should contain the rule' do
+ shell('iptables-save -t nat') do |r|
+ expect(r.stdout).to match(/-A PREROUTING -p tcp -m multiport --ports 585 -m socket -m comment --comment "585 - test" -j ACCEPT/)
end
end
+ end
- context 'false' do
- it 'applies' do
- pp = <<-EOS
- class { '::firewall': }
- firewall { '586 - test':
- ensure => present,
- proto => tcp,
- port => '586',
- action => accept,
- chain => 'PREROUTING',
- table => 'nat',
- socket => false,
- }
- EOS
+ context 'false' do
+ it 'applies' do
+ pp = <<-EOS
+ class { '::firewall': }
+ firewall { '586 - test':
+ ensure => present,
+ proto => tcp,
+ port => '586',
+ action => accept,
+ chain => 'PREROUTING',
+ table => 'nat',
+ socket => false,
+ }
+ EOS
- apply_manifest(pp, :catch_failures => true)
- end
+ apply_manifest(pp, :catch_failures => true)
+ end
- it 'should contain the rule' do
- shell('iptables-save -t nat') do |r|
- expect(r.stdout).to match(/-A PREROUTING -p tcp -m multiport --ports 586 -m comment --comment "586 - test" -j ACCEPT/)
- end
+ it 'should contain the rule' do
+ shell('iptables-save -t nat') do |r|
+ expect(r.stdout).to match(/-A PREROUTING -p tcp -m multiport --ports 586 -m comment --comment "586 - test" -j ACCEPT/)
end
end
end
require 'spec_helper_acceptance'
# RHEL5 does not support -m socket
-if default['platform'] !~ /el-5/
- describe 'firewall socket property' do
- before :all do
- iptables_flush_all_tables
- end
+describe 'firewall socket property', :unless => (default['platform'] =~ /el-5/ || fact('operatingsystem') == 'SLES') do
+ before :all do
+ iptables_flush_all_tables
+ end
- shared_examples "is idempotent" do |value, line_match|
- it "changes the value to #{value}" do
- pp = <<-EOS
- class { '::firewall': }
- firewall { '598 - test':
- ensure => present,
- proto => 'tcp',
- chain => 'PREROUTING',
- table => 'raw',
- #{value}
- }
- EOS
+ shared_examples "is idempotent" do |value, line_match|
+ it "changes the value to #{value}" do
+ pp = <<-EOS
+ class { '::firewall': }
+ firewall { '598 - test':
+ ensure => present,
+ proto => 'tcp',
+ chain => 'PREROUTING',
+ table => 'raw',
+ #{value}
+ }
+ EOS
- apply_manifest(pp, :catch_failures => true)
- apply_manifest(pp, :catch_changes => true)
+ apply_manifest(pp, :catch_failures => true)
+ apply_manifest(pp, :catch_changes => true)
- shell('iptables-save -t raw') do |r|
- expect(r.stdout).to match(/#{line_match}/)
- end
+ shell('iptables-save -t raw') do |r|
+ expect(r.stdout).to match(/#{line_match}/)
end
end
- shared_examples "doesn't change" do |value, line_match|
- it "doesn't change the value to #{value}" do
- pp = <<-EOS
- class { '::firewall': }
- firewall { '598 - test':
- ensure => present,
- proto => 'tcp',
- chain => 'PREROUTING',
- table => 'raw',
- #{value}
- }
- EOS
+ end
+ shared_examples "doesn't change" do |value, line_match|
+ it "doesn't change the value to #{value}" do
+ pp = <<-EOS
+ class { '::firewall': }
+ firewall { '598 - test':
+ ensure => present,
+ proto => 'tcp',
+ chain => 'PREROUTING',
+ table => 'raw',
+ #{value}
+ }
+ EOS
- apply_manifest(pp, :catch_changes => true)
+ apply_manifest(pp, :catch_changes => true)
- shell('iptables-save -t raw') do |r|
- expect(r.stdout).to match(/#{line_match}/)
- end
+ shell('iptables-save -t raw') do |r|
+ expect(r.stdout).to match(/#{line_match}/)
end
end
+ end
- describe 'adding a rule' do
- context 'when unset' do
- before :all do
- iptables_flush_all_tables
- end
- it_behaves_like 'is idempotent', '', /-A PREROUTING -p tcp -m comment --comment "598 - test"/
+ describe 'adding a rule' do
+ context 'when unset' do
+ before :all do
+ iptables_flush_all_tables
end
- context 'when set to true' do
- before :all do
- iptables_flush_all_tables
- end
- it_behaves_like 'is idempotent', 'socket => true,', /-A PREROUTING -p tcp -m socket -m comment --comment "598 - test"/
+ it_behaves_like 'is idempotent', '', /-A PREROUTING -p tcp -m comment --comment "598 - test"/
+ end
+ context 'when set to true' do
+ before :all do
+ iptables_flush_all_tables
end
- context 'when set to false' do
- before :all do
- iptables_flush_all_tables
- end
- it_behaves_like "is idempotent", 'socket => false,', /-A PREROUTING -p tcp -m comment --comment "598 - test"/
+ it_behaves_like 'is idempotent', 'socket => true,', /-A PREROUTING -p tcp -m socket -m comment --comment "598 - test"/
+ end
+ context 'when set to false' do
+ before :all do
+ iptables_flush_all_tables
end
+ it_behaves_like "is idempotent", 'socket => false,', /-A PREROUTING -p tcp -m comment --comment "598 - test"/
end
- describe 'editing a rule' do
- context 'when unset or false' do
- before :each do
- iptables_flush_all_tables
- shell('iptables -t raw -A PREROUTING -p tcp -m comment --comment "598 - test"')
- end
- context 'and current value is false' do
- it_behaves_like "doesn't change", 'socket => false,', /-A PREROUTING -p tcp -m comment --comment "598 - test"/
- end
- context 'and current value is true' do
- it_behaves_like "is idempotent", 'socket => true,', /-A PREROUTING -p tcp -m socket -m comment --comment "598 - test"/
- end
+ end
+ describe 'editing a rule' do
+ context 'when unset or false' do
+ before :each do
+ iptables_flush_all_tables
+ shell('iptables -t raw -A PREROUTING -p tcp -m comment --comment "598 - test"')
+ end
+ context 'and current value is false' do
+ it_behaves_like "doesn't change", 'socket => false,', /-A PREROUTING -p tcp -m comment --comment "598 - test"/
+ end
+ context 'and current value is true' do
+ it_behaves_like "is idempotent", 'socket => true,', /-A PREROUTING -p tcp -m socket -m comment --comment "598 - test"/
+ end
+ end
+ context 'when set to true' do
+ before :each do
+ iptables_flush_all_tables
+ shell('iptables -t raw -A PREROUTING -p tcp -m socket -m comment --comment "598 - test"')
+ end
+ context 'and current value is false' do
+ it_behaves_like "is idempotent", 'socket => false,', /-A PREROUTING -p tcp -m comment --comment "598 - test"/
end
- context 'when set to true' do
- before :each do
- iptables_flush_all_tables
- shell('iptables -t raw -A PREROUTING -p tcp -m socket -m comment --comment "598 - test"')
- end
- context 'and current value is false' do
- it_behaves_like "is idempotent", 'socket => false,', /-A PREROUTING -p tcp -m comment --comment "598 - test"/
- end
- context 'and current value is true' do
- it_behaves_like "doesn't change", 'socket => true,', /-A PREROUTING -p tcp -m socket -m comment --comment "598 - test"/
- end
+ context 'and current value is true' do
+ it_behaves_like "doesn't change", 'socket => true,', /-A PREROUTING -p tcp -m socket -m comment --comment "598 - test"/
end
end
end