فهرست منبع

WIP: add test for add user group permission

Daniel Lee 8 سال پیش
والد
کامیت
29ec05298e
2فایلهای تغییر یافته به همراه32 افزوده شده و 2 حذف شده
  1. 1 1
      public/app/features/dashboard/acl/acl.ts
  2. 31 1
      public/app/features/dashboard/acl/specs/acl_specs.ts

+ 1 - 1
public/app/features/dashboard/acl/acl.ts

@@ -51,7 +51,7 @@ export class AclCtrl {
         return;
         return;
       }
       }
 
 
-      this.addOrUpdateUserGroupPermission(this.userGroupId, this.permission).then(() => {
+      return this.addOrUpdateUserGroupPermission(this.userGroupId, this.permission).then(() => {
         this.userGroupId = null;
         this.userGroupId = null;
         return this.get(this.dashboard.id);
         return this.get(this.dashboard.id);
       });
       });

+ 31 - 1
public/app/features/dashboard/acl/specs/acl_specs.ts

@@ -25,6 +25,8 @@ describe('AclCtrl', () => {
 
 
   describe('when user permission is to be added', () => {
   describe('when user permission is to be added', () => {
     beforeEach(done => {
     beforeEach(done => {
+      backendSrv.get.reset();
+      backendSrv.post.reset();
       ctx.ctrl.type = 'User';
       ctx.ctrl.type = 'User';
       ctx.ctrl.userId = 2;
       ctx.ctrl.userId = 2;
       ctx.ctrl.permission = 1;
       ctx.ctrl.permission = 1;
@@ -41,11 +43,39 @@ describe('AclCtrl', () => {
     });
     });
 
 
     it('should refresh the list after saving.', () => {
     it('should refresh the list after saving.', () => {
-      expect(backendSrv.get.getCall(1).args[0]).to.eql('/api/dashboards/1/acl');
+      expect(backendSrv.get.getCall(0).args[0]).to.eql('/api/dashboards/1/acl');
     });
     });
 
 
      it('should reset userId', () => {
      it('should reset userId', () => {
       expect(ctx.ctrl.userId).to.eql(null);
       expect(ctx.ctrl.userId).to.eql(null);
     });
     });
   });
   });
+
+  describe('when user group permission is to be added', () => {
+    beforeEach(done => {
+      backendSrv.get.reset();
+      backendSrv.post.reset();
+      ctx.ctrl.type = 'User Group';
+      ctx.ctrl.userGroupId = 2;
+      ctx.ctrl.permission = 1;
+
+      ctx.ctrl.addPermission().then(() => {
+        done();
+      });
+    });
+
+    it('should parse the result and save to db', () => {
+      expect(backendSrv.post.getCall(0).args[0]).to.eql('/api/dashboards/1/acl');
+      expect(backendSrv.post.getCall(0).args[1].userGroupId).to.eql(2);
+      expect(backendSrv.post.getCall(0).args[1].permissionType).to.eql(1);
+    });
+
+    it('should refresh the list after saving.', () => {
+      expect(backendSrv.get.getCall(0).args[0]).to.eql('/api/dashboards/1/acl');
+    });
+
+     it('should reset userGroupId', () => {
+      expect(ctx.ctrl.userGroupId).to.eql(null);
+    });
+  });
 });
 });