Update 3rdparty rabbitmq module
[mirror/dsa-puppet.git] / 3rdparty / modules / rabbitmq / spec / acceptance / user_spec.rb
index 6aab665..beff492 100644 (file)
@@ -1,18 +1,16 @@
 require 'spec_helper_acceptance'
 
 describe 'rabbitmq user:' do
-
-
-  context "create user resource" do
-    it 'should run successfully' do
+  context 'create user resource' do
+    it 'runs successfully' do
       pp = <<-EOS
-      if $::osfamily == 'RedHat' {
+      if $facts['os']['family'] == 'RedHat' {
         class { 'erlang': epel_enable => true }
-        Class['erlang'] -> Class['::rabbitmq']
+        Class['erlang'] -> Class['rabbitmq']
       }
-      class { '::rabbitmq':
+      class { 'rabbitmq':
         service_manage    => true,
-        port              => '5672',
+        port              => 5672,
         delete_guest_user => true,
         admin_enable      => true,
       } ->
@@ -23,16 +21,36 @@ describe 'rabbitmq user:' do
       }
       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)
     end
 
-    it 'should have the user' do
-      shell('rabbitmqctl list_users') do |r|
-        expect(r.stdout).to match(/dan.*administrator/)
+    # rubocop:disable RSpec/MultipleExpectations
+    it 'has the user' do
+      shell('rabbitmqctl list_users -q') do |r|
+        expect(r.stdout).to match(%r{dan.*administrator})
         expect(r.exit_code).to be_zero
       end
     end
+    # rubocop:enable RSpec/MultipleExpectations
+  end
+
+  context 'destroy user resource' do
+    it 'runs successfully' do
+      pp = <<-EOS
+      rabbitmq_user { 'dan':
+        ensure => absent,
+      }
+      EOS
+
+      apply_manifest(pp, catch_failures: true)
+      apply_manifest(pp, catch_changes: true)
+    end
 
+    it 'does not have the user' do
+      shell('rabbitmqctl list_users -q') do |r|
+        expect(r.stdout).not_to match(%r{dan\s+})
+      end
+    end
   end
 end