From 469111e0e34fa1f953c3638a1826eaca0777fff9 Mon Sep 17 00:00:00 2001 From: felmer <felmer> Date: Tue, 21 Nov 2017 08:17:01 +0000 Subject: [PATCH] SSDM-5724: js test for fetching user and authorization group of role assignments SVN: 38926 --- .../openbis-v3-api-test/html/test/common.js | 8 +++- .../openbis-v3-api-test/html/test/test-get.js | 45 +++++++++++++++++-- 2 files changed, 48 insertions(+), 5 deletions(-) diff --git a/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/common.js b/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/common.js index 25dce12d4a4..ce9a9adcead 100644 --- a/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/common.js +++ b/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/common.js @@ -430,12 +430,16 @@ define([ 'jquery', 'openbis', 'underscore', 'test/dtos' ], function($, defaultOp }); }.bind(this); - this.createRoleAssignment = function(facade, space) { + this.createRoleAssignment = function(facade, isUser) { var c = this; return c.createSpace(facade).then(function(spaceId) { var creation = new dtos.RoleAssignmentCreation(); creation.setRole(c.Role.ADMIN); - creation.setUserId(new c.PersonPermId("power_user")); + if (isUser) { + creation.setUserId(new c.PersonPermId("power_user")); + } else { + creation.setAuthorizationGroupId(new c.AuthorizationGroupPermId("TEST-GROUP")); + } creation.setSpaceId(spaceId); return facade.createRoleAssignments([ creation ]).then(function(permIds) { return permIds[0]; diff --git a/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/test-get.js b/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/test-get.js index 7f8cd22da42..768c7d48ae6 100644 --- a/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/test-get.js +++ b/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-v3-api-test/html/test/test-get.js @@ -368,20 +368,59 @@ define([ 'jquery', 'underscore', 'openbis', 'test/openbis-execute-operations', ' testGet(c, fCreate, fGet, fGetEmptyFetchOptions, fechOptionsTestConfig); }); - QUnit.test("getRoleAssignments()", function(assert) { + QUnit.test("getRoleAssignments() with user", function(assert) { var c = new common(assert, openbis); var fo = new c.RoleAssignmentFetchOptions(); + fo.withUser(); var fechOptionsTestConfig = getConfigForFetchOptions(fo); var fCreate = function(facade) { - return $.when(c.createRoleAssignment(facade)).then(function(id) { + return $.when(c.createRoleAssignment(facade, true)).then(function(id) { return [ id ]; }); } var fGet = function(facade, permIds) { testFetchOptionsAssignation(c, fo, fechOptionsTestConfig); - return facade.getRoleAssignments(permIds, fo); + var result = facade.getRoleAssignments(permIds, fo); + result.then(function(map) { + permIds.forEach(function(permId) { + var entity = map[permId]; + c.assertEqual(entity.getUser().getUserId(), "power_user", "User"); + }); + }); + return result; + } + + var fGetEmptyFetchOptions = function(facade, permIds) { + return facade.getRoleAssignments(permIds, new c.RoleAssignmentFetchOptions()); + } + + testGet(c, fCreate, fGet, fGetEmptyFetchOptions, fechOptionsTestConfig); + }); + + QUnit.test("getRoleAssignments() with authorization group", function(assert) { + var c = new common(assert, openbis); + var fo = new c.RoleAssignmentFetchOptions(); + fo.withAuthorizationGroup(); + var fechOptionsTestConfig = getConfigForFetchOptions(fo); + + var fCreate = function(facade) { + return $.when(c.createRoleAssignment(facade, false)).then(function(id) { + return [ id ]; + }); + } + + var fGet = function(facade, permIds) { + testFetchOptionsAssignation(c, fo, fechOptionsTestConfig); + var result = facade.getRoleAssignments(permIds, fo); + result.then(function(map) { + permIds.forEach(function(permId) { + var entity = map[permId]; + c.assertEqual(entity.getAuthorizationGroup().getCode(), "TEST-GROUP", "Authorization group"); + }); + }); + return result; } var fGetEmptyFetchOptions = function(facade, permIds) { -- GitLab