]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - 3rdparty/modules/rabbitmq/spec/acceptance/policy_spec.rb
move to puppetlabs rabbitmq module
[dsa-puppet.git] / 3rdparty / modules / rabbitmq / spec / acceptance / policy_spec.rb
diff --git a/3rdparty/modules/rabbitmq/spec/acceptance/policy_spec.rb b/3rdparty/modules/rabbitmq/spec/acceptance/policy_spec.rb
new file mode 100644 (file)
index 0000000..26858ec
--- /dev/null
@@ -0,0 +1,47 @@
+require 'spec_helper_acceptance'
+
+describe 'rabbitmq policy on a vhost:' do
+
+
+  context "create policy resource" do
+    it 'should run successfully' do
+      pp = <<-EOS
+      if $::osfamily == 'RedHat' {
+        class { 'erlang': epel_enable => true }
+        Class['erlang'] -> Class['::rabbitmq']
+      }
+      class { '::rabbitmq':
+        service_manage    => true,
+        port              => '5672',
+        delete_guest_user => true,
+        admin_enable      => true,
+      } ->
+
+      rabbitmq_vhost { 'myhost':
+        ensure => present,
+      } ->
+
+      rabbitmq_policy { 'ha-all@myhost':
+        pattern    => '.*',
+        priority   => 0,
+        applyto    => 'all',
+        definition => {
+          'ha-mode'      => 'all',
+          'ha-sync-mode' => 'automatic',
+        },
+      }
+      EOS
+
+      apply_manifest(pp, :catch_failures => true)
+      apply_manifest(pp, :catch_changes => true)
+    end
+
+    it 'should have the policy' do
+      shell('rabbitmqctl list_policies -p myhost') do |r|
+        expect(r.stdout).to match(/myhost.*ha-all.*ha-sync-mode/)
+        expect(r.exit_code).to be_zero
+      end
+    end
+
+  end
+end