|
61 | 61 | }
|
62 | 62 | EOS
|
63 | 63 |
|
64 |
| - expect(provider).to receive(:mongo_eval).with("db.runCommand(#{cmd_json})", 'new_database') |
| 64 | + allow(provider).to receive(:mongo_eval).with("db.runCommand(#{cmd_json})", 'new_database') |
65 | 65 | provider.create
|
| 66 | + expect(provider).to have_received(:mongo_eval) |
66 | 67 | end
|
67 | 68 | end
|
68 | 69 |
|
69 | 70 | describe 'destroy' do
|
70 | 71 | it 'removes a user' do
|
71 |
| - expect(provider).to receive(:mongo_eval).with('db.dropUser("new_user")') |
| 72 | + allow(provider).to receive(:mongo_eval).with('db.dropUser("new_user")') |
72 | 73 | provider.destroy
|
| 74 | + expect(provider).to have_received(:mongo_eval) |
73 | 75 | end
|
74 | 76 | end
|
75 | 77 |
|
|
94 | 96 | "digestPassword":false
|
95 | 97 | }
|
96 | 98 | EOS
|
97 |
| - expect(provider).to receive(:mongo_eval). |
| 99 | + allow(provider).to receive(:mongo_eval). |
98 | 100 | with("db.runCommand(#{cmd_json})", 'new_database')
|
99 | 101 | provider.password_hash = 'newpass'
|
| 102 | + expect(provider).to have_received(:mongo_eval) |
100 | 103 | end
|
101 | 104 | end
|
102 | 105 |
|
|
121 | 124 | describe 'roles=' do
|
122 | 125 | it 'changes nothing' do
|
123 | 126 | resource.provider.set(name: 'new_user', ensure: :present, roles: %w[role1 role2@other_database])
|
124 |
| - expect(provider).not_to receive(:mongo_eval) |
| 127 | + allow(provider).to receive(:mongo_eval) |
125 | 128 | provider.roles = %w[role1 role2@other_database]
|
| 129 | + expect(provider).not_to have_received(:mongo_eval) |
126 | 130 | end
|
127 | 131 |
|
128 | 132 | it 'grant a role' do
|
129 | 133 | resource.provider.set(name: 'new_user', ensure: :present, roles: %w[role1 role2@other_database])
|
130 |
| - expect(provider).to receive(:mongo_eval). |
| 134 | + allow(provider).to receive(:mongo_eval). |
131 | 135 | with('db.getSiblingDB("new_database").grantRolesToUser("new_user", [{"role":"role3","db":"new_database"}])')
|
132 | 136 | provider.roles = %w[role1 role2@other_database role3]
|
| 137 | + expect(provider).to have_received(:mongo_eval) |
133 | 138 | end
|
134 | 139 |
|
135 | 140 | it 'revokes a role' do
|
136 | 141 | resource.provider.set(name: 'new_user', ensure: :present, roles: %w[role1 role2@other_database])
|
137 |
| - expect(provider).to receive(:mongo_eval). |
| 142 | + allow(provider).to receive(:mongo_eval). |
138 | 143 | with('db.getSiblingDB("new_database").revokeRolesFromUser("new_user", [{"role":"role1","db":"new_database"}])')
|
139 | 144 | provider.roles = ['role2@other_database']
|
| 145 | + expect(provider).to have_received(:mongo_eval) |
140 | 146 | end
|
141 | 147 |
|
142 |
| - # rubocop:disable RSpec/MultipleExpectations |
143 | 148 | it 'exchanges a role' do
|
144 | 149 | resource.provider.set(name: 'new_user', ensure: :present, roles: %w[role1 role2@other_database])
|
145 |
| - expect(provider).to receive(:mongo_eval). |
| 150 | + allow(provider).to receive(:mongo_eval). |
146 | 151 | with('db.getSiblingDB("new_database").revokeRolesFromUser("new_user", [{"role":"role1","db":"new_database"}])')
|
147 |
| - expect(provider).to receive(:mongo_eval). |
| 152 | + allow(provider).to receive(:mongo_eval). |
148 | 153 | with('db.getSiblingDB("new_database").grantRolesToUser("new_user", [{"role":"role3","db":"new_database"}])')
|
149 | 154 |
|
150 | 155 | provider.roles = %w[role2@other_database role3]
|
| 156 | + |
| 157 | + expect(provider).to have_received(:mongo_eval).twice |
151 | 158 | end
|
152 |
| - # rubocop:enable RSpec/MultipleExpectations |
153 | 159 | end
|
154 | 160 | end
|
0 commit comments