Update 3rdparty rabbitmq module
[mirror/dsa-puppet.git] / 3rdparty / modules / rabbitmq / spec / unit / puppet / type / rabbitmq_user_spec.rb
index a73d9c9..eaa72d0 100644 (file)
@@ -1,52 +1,50 @@
-require 'puppet'
-require 'puppet/type/rabbitmq_user'
+require 'spec_helper'
 describe Puppet::Type.type(:rabbitmq_user) do
-  before :each do
-    @user = Puppet::Type.type(:rabbitmq_user).new(:name => 'foo', :password => 'pass')
+  let(:user) do
+    Puppet::Type.type(:rabbitmq_user).new(name: 'foo', password: 'pass')
   end
-  it 'should accept a user name' do
-    @user[:name] = 'dan'
-    @user[:name].should == 'dan'
-    @user[:admin].should == :false
+
+  it 'accepts a user name' do
+    user[:name] = 'dan'
+    expect(user[:name]).to eq('dan')
   end
-  it 'should accept a password' do
-    @user[:password] = 'foo'
-    @user[:password].should == 'foo'
+  it 'admin is false when :admin is not set' do
+    user[:name] = 'dan'
+    expect(user[:admin]).to eq(:false)
   end
-  it 'should require a password' do
-    expect {
-      Puppet::Type.type(:rabbitmq_user).new(:name => 'foo')
-    }.to raise_error(/must set password/)
+  it 'accepts a password' do
+    user[:password] = 'foo'
+    expect(user[:password]).to eq('foo')
   end
-  it 'should require a name' do
-    expect {
+  it 'requires a name' do
+    expect do
       Puppet::Type.type(:rabbitmq_user).new({})
-    }.to raise_error(Puppet::Error, 'Title or name must be provided')
+    end.to raise_error(Puppet::Error, 'Title or name must be provided')
   end
-  it 'should not allow whitespace in the name' do
-    expect {
-      @user[:name] = 'b r'
-    }.to raise_error(Puppet::Error, /Valid values match/)
+  it 'does not allow whitespace in the name' do
+    expect do
+      user[:name] = 'b r'
+    end.to raise_error(Puppet::Error, %r{Valid values match})
   end
   [true, false, 'true', 'false'].each do |val|
     it "admin property should accept #{val}" do
-      @user[:admin] = val
-      @user[:admin].should == val.to_s.to_sym
+      user[:admin] = val
+      expect(user[:admin]).to eq(val.to_s.to_sym)
     end
   end
-  it 'should not accept non-boolean values for admin' do
-    expect {
-      @user[:admin] = 'yes'
-    }.to raise_error(Puppet::Error, /Invalid value/)
+  it 'does not accept non-boolean values for admin' do
+    expect do
+      user[:admin] = 'yes'
+    end.to raise_error(Puppet::Error, %r{Invalid value})
   end
-  it 'should not accept tags with spaces' do
-    expect {
-      @user[:tags] = ['policy maker']
-    }.to raise_error(Puppet::Error, /Invalid tag/)
+  it 'does not accept tags with spaces' do
+    expect do
+      user[:tags] = ['policy maker']
+    end.to raise_error(Puppet::Error, %r{Invalid tag})
   end
-  it 'should not accept the administrator tag' do
-    expect {
-      @user[:tags] = ['administrator']
-    }.to raise_error(Puppet::Error, /must use admin property/)
+  it 'does not accept the administrator tag' do
+    expect do
+      user[:tags] = ['administrator']
+    end.to raise_error(Puppet::Error, %r{must use admin property})
   end
 end