Skip to content

Commit 87d39e8

Browse files
author
Colleen Murphy
committed
Update unit tests to handle new -q flag
Updated the rabbitmq_user, rabbitmq_user_permissions, and rabbitmq_vhost spec tests to correctly mock the rabbitmqctl command with the -q flag. Also added one missed -q to a list users call.
1 parent 7adb318 commit 87d39e8

File tree

4 files changed

+13
-29
lines changed

4 files changed

+13
-29
lines changed

lib/puppet/provider/rabbitmq_user/rabbitmqctl.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ def make_user_admin
9090

9191
private
9292
def get_user_tags
93-
match = rabbitmqctl('list_users').split(/\n/)[1..-2].collect do |line|
93+
match = rabbitmqctl('-q', 'list_users').split(/\n/).collect do |line|
9494
line.match(/^#{Regexp.escape(resource[:name])}\s+\[(.*?)\]/)
9595
end.compact.first
9696
Set.new(match[1].split(/, /)) if match

spec/unit/puppet/provider/rabbitmq_user/rabbitmqctl_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@
7777
@provider.admin.should == :false
7878
end
7979
it 'should fail if admin value is invalid' do
80-
@provider.expects(:rabbitmqctl).with('q', 'list_users').returns <<-EOT
80+
@provider.expects(:rabbitmqctl).with('-q', 'list_users').returns <<-EOT
8181
foo fail
8282
EOT
8383
expect { @provider.admin }.to raise_error(Puppet::Error, /Could not match line/)

spec/unit/puppet/provider/rabbitmq_user_permissions/rabbitmqctl_spec.rb

Lines changed: 8 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -15,33 +15,25 @@
1515
@provider_class.instance_variable_set(:@users, nil)
1616
end
1717
it 'should match user permissions from list' do
18-
@provider.class.expects(:rabbitmqctl).with('list_user_permissions', 'foo').returns <<-EOT
19-
Listing users ...
18+
@provider.class.expects(:rabbitmqctl).with('-q', 'list_user_permissions', 'foo').returns <<-EOT
2019
bar 1 2 3
21-
...done.
2220
EOT
2321
@provider.exists?.should == {:configure=>"1", :write=>"2", :read=>"3"}
2422
end
2523
it 'should match user permissions with empty columns' do
26-
@provider.class.expects(:rabbitmqctl).with('list_user_permissions', 'foo').returns <<-EOT
27-
Listing users ...
24+
@provider.class.expects(:rabbitmqctl).with('-q', 'list_user_permissions', 'foo').returns <<-EOT
2825
bar 3
29-
...done.
3026
EOT
3127
@provider.exists?.should == {:configure=>"", :write=>"", :read=>"3"}
3228
end
3329
it 'should not match user permissions with more than 3 columns' do
34-
@provider.class.expects(:rabbitmqctl).with('list_user_permissions', 'foo').returns <<-EOT
35-
Listing users ...
30+
@provider.class.expects(:rabbitmqctl).with('-q', 'list_user_permissions', 'foo').returns <<-EOT
3631
bar 1 2 3 4
37-
...done.
3832
EOT
3933
expect { @provider.exists? }.to raise_error(Puppet::Error, /cannot parse line from list_user_permissions/)
4034
end
4135
it 'should not match an empty list' do
42-
@provider.class.expects(:rabbitmqctl).with('list_user_permissions', 'foo').returns <<-EOT
43-
Listing users ...
44-
...done.
36+
@provider.class.expects(:rabbitmqctl).with('-q', 'list_user_permissions', 'foo').returns <<-EOT
4537
EOT
4638
@provider.exists?.should == nil
4739
end
@@ -59,20 +51,16 @@
5951
end
6052
{:configure_permission => '1', :write_permission => '2', :read_permission => '3'}.each do |k,v|
6153
it "should be able to retrieve #{k}" do
62-
@provider.class.expects(:rabbitmqctl).with('list_user_permissions', 'foo').returns <<-EOT
63-
Listing users ...
54+
@provider.class.expects(:rabbitmqctl).with('-q', 'list_user_permissions', 'foo').returns <<-EOT
6455
bar 1 2 3
65-
...done.
6656
EOT
6757
@provider.send(k).should == v
6858
end
6959
end
7060
{:configure_permission => '1', :write_permission => '2', :read_permission => '3'}.each do |k,v|
7161
it "should be able to retrieve #{k} after exists has been called" do
72-
@provider.class.expects(:rabbitmqctl).with('list_user_permissions', 'foo').returns <<-EOT
73-
Listing users ...
62+
@provider.class.expects(:rabbitmqctl).with('-q', 'list_user_permissions', 'foo').returns <<-EOT
7463
bar 1 2 3
75-
...done.
7664
EOT
7765
@provider.exists?
7866
@provider.send(k).should == v
@@ -83,21 +71,17 @@
8371
:write_permission => ['1', 'foo', '3']
8472
}.each do |perm, columns|
8573
it "should be able to sync #{perm}" do
86-
@provider.class.expects(:rabbitmqctl).with('list_user_permissions', 'foo').returns <<-EOT
87-
Listing users ...
74+
@provider.class.expects(:rabbitmqctl).with('-q', 'list_user_permissions', 'foo').returns <<-EOT
8875
bar 1 2 3
89-
...done.
9076
EOT
9177
@provider.resource[perm] = 'foo'
9278
@provider.expects(:rabbitmqctl).with('set_permissions', '-p', 'bar', 'foo', *columns)
9379
@provider.send("#{perm}=".to_sym, 'foo')
9480
end
9581
end
9682
it 'should only call set_permissions once' do
97-
@provider.class.expects(:rabbitmqctl).with('list_user_permissions', 'foo').returns <<-EOT
98-
Listing users ...
83+
@provider.class.expects(:rabbitmqctl).with('-q', 'list_user_permissions', 'foo').returns <<-EOT
9984
bar 1 2 3
100-
...done.
10185
EOT
10286
@provider.resource[:configure_permission] = 'foo'
10387
@provider.resource[:read_permission] = 'foo'

spec/unit/puppet/provider/rabbitmq_vhost/rabbitmqctl_spec.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,22 +12,22 @@
1212
@provider = provider_class.new(@resource)
1313
end
1414
it 'should match vhost names' do
15-
@provider.expects(:rabbitmqctl).with('list_vhosts').returns <<-EOT
15+
@provider.expects(:rabbitmqctl).with('-q', 'list_vhosts').returns <<-EOT
1616
Listing vhosts ...
1717
foo
1818
...done.
1919
EOT
2020
@provider.exists?.should == 'foo'
2121
end
2222
it 'should not match if no vhosts on system' do
23-
@provider.expects(:rabbitmqctl).with('list_vhosts').returns <<-EOT
23+
@provider.expects(:rabbitmqctl).with('-q', 'list_vhosts').returns <<-EOT
2424
Listing vhosts ...
2525
...done.
2626
EOT
2727
@provider.exists?.should be_nil
2828
end
2929
it 'should not match if no matching vhosts on system' do
30-
@provider.expects(:rabbitmqctl).with('list_vhosts').returns <<-EOT
30+
@provider.expects(:rabbitmqctl).with('-q', 'list_vhosts').returns <<-EOT
3131
Listing vhosts ...
3232
fooey
3333
...done.

0 commit comments

Comments
 (0)