@@ -194,67 +194,117 @@ def test_get_dashboards_tags(self, m):
194
194
self .assertEqual (len (tags ), 2 )
195
195
self .assertEqual (tags [0 ]["term" ], "tag1" )
196
196
197
- @requests_mock .Mocker ()
198
- def test_get_dashboard_permissions (self , m ):
199
- m .get (
197
+ def mocker_provision_permissions (self , mock ):
198
+ response_data = [
199
+ {
200
+ "id" : 1 ,
201
+ "dashboardId" : 1 ,
202
+ "created" : "2017-06-20T02:00:00+02:00" ,
203
+ "updated" : "2017-06-20T02:00:00+02:00" ,
204
+ "userId" : 0 ,
205
+ "userLogin" : "" ,
206
+ "userEmail" : "" ,
207
+ "teamId" : 0 ,
208
+ "team" : "" ,
209
+ "role" : "Viewer" ,
210
+ "permission" : 1 ,
211
+ "permissionName" : "View" ,
212
+ "uid" : "foobar" ,
213
+ "title" : "" ,
214
+ "slug" : "" ,
215
+ "isFolder" : "false" ,
216
+ "url" : "" ,
217
+ },
218
+ {
219
+ "id" : 2 ,
220
+ "dashboardId" : 1 ,
221
+ "created" : "2017-06-20T02:00:00+02:00" ,
222
+ "updated" : "2017-06-20T02:00:00+02:00" ,
223
+ "userId" : 0 ,
224
+ "userLogin" : "" ,
225
+ "userEmail" : "" ,
226
+ "teamId" : 0 ,
227
+ "team" : "" ,
228
+ "role" : "Editor" ,
229
+ "permission" : 2 ,
230
+ "permissionName" : "Edit" ,
231
+ "uid" : "bazqux" ,
232
+ "title" : "" ,
233
+ "slug" : "" ,
234
+ "isFolder" : "false" ,
235
+ "url" : "" ,
236
+ },
237
+ ]
238
+ mock .get (
200
239
"http://localhost/api/dashboards/id/1/permissions" ,
201
- json = [
202
- {
203
- "id" : 1 ,
204
- "dashboardId" : 1 ,
205
- "created" : "2017-06-20T02:00:00+02:00" ,
206
- "updated" : "2017-06-20T02:00:00+02:00" ,
207
- "userId" : 0 ,
208
- "userLogin" : "" ,
209
- "userEmail" : "" ,
210
- "teamId" : 0 ,
211
- "team" : "" ,
212
- "role" : "Viewer" ,
213
- "permission" : 1 ,
214
- "permissionName" : "View" ,
215
- "uid" : "" ,
216
- "title" : "" ,
217
- "slug" : "" ,
218
- "isFolder" : "false" ,
219
- "url" : "" ,
220
- },
221
- {
222
- "id" : 2 ,
223
- "dashboardId" : 1 ,
224
- "created" : "2017-06-20T02:00:00+02:00" ,
225
- "updated" : "2017-06-20T02:00:00+02:00" ,
226
- "userId" : 0 ,
227
- "userLogin" : "" ,
228
- "userEmail" : "" ,
229
- "teamId" : 0 ,
230
- "team" : "" ,
231
- "role" : "Editor" ,
232
- "permission" : 2 ,
233
- "permissionName" : "Edit" ,
234
- "uid" : "" ,
235
- "title" : "" ,
236
- "slug" : "" ,
237
- "isFolder" : "false" ,
238
- "url" : "" ,
239
- },
240
- ],
240
+ json = response_data ,
241
+ )
242
+ mock .get (
243
+ "http://localhost/api/dashboards/uid/foobar/permissions" ,
244
+ json = response_data ,
245
+ )
246
+ mock .post (
247
+ "http://localhost/api/dashboards/id/1/permissions" ,
248
+ json = {"message" : "Dashboard permissions updated" },
249
+ )
250
+ mock .post (
251
+ "http://localhost/api/dashboards/uid/foobar/permissions" ,
252
+ json = {"message" : "Dashboard permissions updated" },
241
253
)
254
+
255
+ @requests_mock .Mocker ()
256
+ def test_get_dashboard_permissions (self , m ):
257
+ self .mocker_provision_permissions (m )
242
258
permissions = self .grafana .dashboard .get_dashboard_permissions (1 )
243
259
self .assertEqual (len (permissions ), 2 )
244
260
self .assertEqual (permissions [0 ]["dashboardId" ], 1 )
245
261
262
+ @requests_mock .Mocker ()
263
+ def test_get_dashboard_permissions_by_id (self , m ):
264
+ self .mocker_provision_permissions (m )
265
+ permissions = self .grafana .dashboard .get_permissions_by_id (1 )
266
+ self .assertEqual (len (permissions ), 2 )
267
+ self .assertEqual (permissions [0 ]["dashboardId" ], 1 )
268
+
269
+ @requests_mock .Mocker ()
270
+ def test_get_dashboard_permissions_by_uid (self , m ):
271
+ self .mocker_provision_permissions (m )
272
+ permissions = self .grafana .dashboard .get_permissions_by_uid ("foobar" )
273
+ self .assertEqual (len (permissions ), 2 )
274
+ self .assertEqual (permissions [0 ]["uid" ], "foobar" )
275
+
276
+ permission_data = {
277
+ "items" : [
278
+ {"role" : "Viewer" , "permission" : 1 },
279
+ {"role" : "Editor" , "permission" : 2 },
280
+ {"teamId" : 1 , "permission" : 1 },
281
+ {"userId" : 11 , "permission" : 4 },
282
+ ]
283
+ }
284
+
246
285
@requests_mock .Mocker ()
247
286
def test_update_dashboard_permissions (self , m ):
248
- m . post ( "http://localhost/api/dashboards/id/1/permissions" , json = { "message" : "Dashboard permissions updated" } )
287
+ self . mocker_provision_permissions ( m )
249
288
permissions = self .grafana .dashboard .update_dashboard_permissions (
250
289
1 ,
251
- {
252
- "items" : [
253
- {"role" : "Viewer" , "permission" : 1 },
254
- {"role" : "Editor" , "permission" : 2 },
255
- {"teamId" : 1 , "permission" : 1 },
256
- {"userId" : 11 , "permission" : 4 },
257
- ]
258
- },
290
+ self .permission_data ,
291
+ )
292
+ self .assertEqual (permissions ["message" ], "Dashboard permissions updated" )
293
+
294
+ @requests_mock .Mocker ()
295
+ def test_update_dashboard_permissions_by_id (self , m ):
296
+ self .mocker_provision_permissions (m )
297
+ permissions = self .grafana .dashboard .update_permissions_by_id (
298
+ 1 ,
299
+ self .permission_data ,
300
+ )
301
+ self .assertEqual (permissions ["message" ], "Dashboard permissions updated" )
302
+
303
+ @requests_mock .Mocker ()
304
+ def test_update_dashboard_permissions_by_uid (self , m ):
305
+ self .mocker_provision_permissions (m )
306
+ permissions = self .grafana .dashboard .update_permissions_by_uid (
307
+ "foobar" ,
308
+ self .permission_data ,
259
309
)
260
310
self .assertEqual (permissions ["message" ], "Dashboard permissions updated" )
0 commit comments