@magda/typescript-common 2.0.0-alpha.3 → 2.0.0-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/authorization-api/ApiClient.d.ts +1 -0
- package/dist/authorization-api/ApiClient.js +30 -1
- package/dist/authorization-api/ApiClient.js.map +1 -1
- package/dist/authorization-api/authMiddleware.js +36 -7
- package/dist/authorization-api/authMiddleware.js.map +1 -1
- package/dist/test/buildApiClient.spec.js +32 -14
- package/dist/test/buildApiClient.spec.js.map +1 -1
- package/package.json +3 -3
|
@@ -131,6 +131,7 @@ export default class ApiClient {
|
|
|
131
131
|
createOrgNode(parentNodeId: string, node: Partial<Omit<OrgUnitRecord, "id" | "createBy" | "createTime" | "editBy" | "editTime" | "left" | "right">>): Promise<OrgUnit>;
|
|
132
132
|
createRole(name: string, desc?: string): Promise<Role>;
|
|
133
133
|
createRolePermission(roleId: string, permissionData: CreateRolePermissionInputData): Promise<PermissionRecord>;
|
|
134
|
+
createPermission(permissionData: CreateRolePermissionInputData): Promise<PermissionRecord>;
|
|
134
135
|
getOperationByUri(opUri: string): Promise<OperationRecord>;
|
|
135
136
|
getResourceByUri(resUri: string): Promise<ResourceRecord>;
|
|
136
137
|
private handleGetResult;
|
|
@@ -88,7 +88,26 @@ class ApiClient {
|
|
|
88
88
|
*/
|
|
89
89
|
lookupUser(source, sourceId) {
|
|
90
90
|
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
-
|
|
91
|
+
if (!source) {
|
|
92
|
+
throw new ServerError_1.default("source cannot be empty!", 400);
|
|
93
|
+
}
|
|
94
|
+
if (!sourceId) {
|
|
95
|
+
throw new ServerError_1.default("sourceId cannot be empty!", 400);
|
|
96
|
+
}
|
|
97
|
+
const uri = urijs_1.default(`${this.baseUrl}public/users`).search({
|
|
98
|
+
source,
|
|
99
|
+
sourceId,
|
|
100
|
+
limit: 1
|
|
101
|
+
});
|
|
102
|
+
const res = yield isomorphic_fetch_1.default(uri.toString(), this.getMergeRequestInitOption());
|
|
103
|
+
if (!res.ok) {
|
|
104
|
+
throw new ServerError_1.default(yield res.text(), res.status);
|
|
105
|
+
}
|
|
106
|
+
const data = yield res.json();
|
|
107
|
+
if (!(data === null || data === void 0 ? void 0 : data.length)) {
|
|
108
|
+
return tsmonad_1.Maybe.nothing();
|
|
109
|
+
}
|
|
110
|
+
return tsmonad_1.Maybe.just(data[0]);
|
|
92
111
|
});
|
|
93
112
|
}
|
|
94
113
|
/**
|
|
@@ -346,6 +365,16 @@ class ApiClient {
|
|
|
346
365
|
return yield this.processJsonResponse(res);
|
|
347
366
|
});
|
|
348
367
|
}
|
|
368
|
+
createPermission(permissionData) {
|
|
369
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
370
|
+
const uri = urijs_1.default(`${this.baseUrl}public/permissions`);
|
|
371
|
+
const res = yield isomorphic_fetch_1.default(uri.toString(), this.getMergeRequestInitOption({
|
|
372
|
+
method: "post",
|
|
373
|
+
body: JSON.stringify(permissionData)
|
|
374
|
+
}));
|
|
375
|
+
return yield this.processJsonResponse(res);
|
|
376
|
+
});
|
|
377
|
+
}
|
|
349
378
|
getOperationByUri(opUri) {
|
|
350
379
|
return __awaiter(this, void 0, void 0, function* () {
|
|
351
380
|
const uri = urijs_1.default(`${this.baseUrl}public/operations/byUri/${opUri}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiClient.js","sourceRoot":"","sources":["../../src/authorization-api/ApiClient.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,wEAAqC;AAcrC,qCAAgC;AAChC,oDAA4B;AAC5B,mEAA2C;AAC3C,2EAAmD;AACnD,kDAA0B;AAE1B,iEAAyC;AACzC,4DAAoC;AAEpC,MAAqB,SAAS;IAK1B;IACI,mCAAmC;IACnC,OAAe,EACf,YAAoB,IAAI,EACxB,SAAiB,IAAI;QARjB,QAAG,GAAW,IAAI,CAAC;QACnB,sBAAiB,GAAgB,IAAI,CAAC;QACtC,YAAO,GAAW,EAAE,CAAC;QAQzB,IAAI,CAAC,OAAO,GAAG,0BAAgB,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,SAAS,IAAI,MAAM,EAAE;YACrB,IAAI,CAAC,GAAG,GAAG,kBAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SAC1C;QACD,IAAI,IAAI,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,iBAAiB,GAAG;gBACrB,OAAO,EAAE;oBACL,iBAAiB,EAAE,IAAI,CAAC,GAAG;iBAC9B;aACJ,CAAC;SACL;IACL,CAAC;IAED,yBAAyB,CAAC,eAA4B,IAAI;QACtD,IAAI,qBAAqB,GAAgB,EAAE,CAAC;QAC5C,IACI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI;YAClB,CAAC,EAAC,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,CAAA;gBACnB,CAAC,OAAO,YAAY,CAAC,OAAO,KAAK,QAAQ;oBACrC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;yBAC5B,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;yBAC/B,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAC9C;YACE,qBAAqB,GAAG;gBACpB,OAAO,EAAE;oBACL,cAAc,EAAE,kBAAkB;iBACrC;aACJ,CAAC;SACL;QACD,OAAO,gBAAM,CAAC,KAAK,CACf,EAAE,EACF,IAAI,CAAC,iBAAiB,EACtB,YAAY,EACZ,qBAAqB,CACxB,CAAC;IACN,CAAC;IAEK,mBAAmB,CAAU,GAAa;;YAC5C,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE;gBACvC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAM,CAAC;aAClC;iBAAM;gBACH,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;gBACtC,MAAM,IAAI,qBAAW,CACjB,UAAU,GAAG,CAAC,UAAU,KAAK,YAAY,CAAC,OAAO,CAC7C,aAAa,EACb,EAAE,CACL,EAAE,EACH,GAAG,CAAC,MAAM,CACb,CAAC;aACL;QACL,CAAC;KAAA;IAED;;;;;;OAMG;IACG,OAAO,CAAC,MAAc;;YACxB,OAAO,MAAM,IAAI,CAAC,eAAe,CAC7B,0BAAK,CACD,GAAG,IAAI,CAAC,OAAO,gBAAgB,MAAM,EAAE,EACvC,IAAI,CAAC,yBAAyB,EAAE,CACnC,CACJ,CAAC;QACN,CAAC;KAAA;IAED;;;;;;;OAOG;IACG,UAAU,CACZ,MAAc,EACd,QAAgB;;YAEhB,
|
|
1
|
+
{"version":3,"file":"ApiClient.js","sourceRoot":"","sources":["../../src/authorization-api/ApiClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,15 +46,44 @@ exports.getUser = (baseAuthUrl, jwtSecret, actionUserId) => (req, res, next) =>
|
|
|
46
46
|
exports.mustBeAdmin = (baseAuthUrl, jwtSecret) => {
|
|
47
47
|
const getUserInstance = exports.getUser(baseAuthUrl, jwtSecret);
|
|
48
48
|
return (req, res, next) => {
|
|
49
|
-
getUserInstance(req, res, () => {
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
getUserInstance(req, res, () => __awaiter(void 0, void 0, void 0, function* () {
|
|
50
|
+
var _a, _b;
|
|
51
|
+
try {
|
|
52
|
+
// check the legacy `isAdmin` role
|
|
53
|
+
if ((_a = req === null || req === void 0 ? void 0 : req.user) === null || _a === void 0 ? void 0 : _a.isAdmin) {
|
|
54
|
+
next();
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
else if ((_b = req === null || req === void 0 ? void 0 : req.user) === null || _b === void 0 ? void 0 : _b.id) {
|
|
58
|
+
const msg403 = "Only admin users are authorised to access this API: " +
|
|
59
|
+
req.url;
|
|
60
|
+
const apiClient = new ApiClient_1.default(baseAuthUrl, jwtSecret, constants_1.DEFAULT_ADMIN_USER_ID);
|
|
61
|
+
const roles = yield apiClient.getUserRoles(req.user.id);
|
|
62
|
+
if (!(roles === null || roles === void 0 ? void 0 : roles.length)) {
|
|
63
|
+
throw new ServerError_1.default(msg403, 403);
|
|
64
|
+
}
|
|
65
|
+
if (roles.findIndex((role) => role.id === constants_1.ADMIN_USERS_ROLE_ID) !== -1) {
|
|
66
|
+
next();
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
throw new ServerError_1.default(msg403, 403);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
throw new ServerError_1.default("Not authorized", 401);
|
|
75
|
+
}
|
|
52
76
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
77
|
+
catch (e) {
|
|
78
|
+
if (e instanceof ServerError_1.default) {
|
|
79
|
+
console.warn(`Rejecting by mustBeAdmin: ${e}`);
|
|
80
|
+
res.status(e.statusCode).send(e.message);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
res.status(500).send(`${e}`);
|
|
84
|
+
}
|
|
56
85
|
}
|
|
57
|
-
});
|
|
86
|
+
}));
|
|
58
87
|
};
|
|
59
88
|
};
|
|
60
89
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authMiddleware.js","sourceRoot":"","sources":["../../src/authorization-api/authMiddleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,oDAAqE;AACrE,4DAAoC;AAIpC,sDAAqE;AACrE,
|
|
1
|
+
{"version":3,"file":"authMiddleware.js","sourceRoot":"","sources":["../../src/authorization-api/authMiddleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,oDAAqE;AACrE,4DAAoC;AAIpC,sDAAqE;AACrE,2CAAyE;AACzE,iEAAyC;AAEzC;;;GAGG;AACU,QAAA,OAAO,GAAG,CACnB,WAAmB,EACnB,SAAiB,EACjB,YAAqB,EACvB,EAAE,CAAC,CAAC,GAAY,EAAE,GAAa,EAAE,IAAgB,EAAE,EAAE;IACnD,qBAAgB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC;QACpC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE;YACb,MAAM,SAAS,GAAG,IAAI,mBAAS,CAC3B,WAAW,EACX,SAAS,EACT,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,iCAAqB,CACtD,CAAC;YACF,SAAS;iBACJ,OAAO,CAAC,MAAM,CAAC;iBACf,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;gBAChB,SAAS,CAAC,MAAM,CAAC;oBACb,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;wBACX,GAAG,CAAC,IAAI,mCAID,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAC1B,IAAI,CACV,CAAC;wBACF,IAAI,EAAE,CAAC;oBACX,CAAC;oBACD,OAAO,EAAE,IAAI;iBAChB,CAAC,CAAC;YACP,CAAC,CAAC;iBACD,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,EAAE,IAAI;KAChB,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,gFAAgF;AACnE,QAAA,WAAW,GAAG,CAAC,WAAmB,EAAE,SAAiB,EAAE,EAAE;IAClE,MAAM,eAAe,GAAG,eAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACxD,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAgB,EAAE,EAAE;QACrD,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,GAAS,EAAE;;YACjC,IAAI;gBACA,kCAAkC;gBAClC,UAAI,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,0CAAE,OAAO,EAAE;oBACpB,IAAI,EAAE,CAAC;oBACP,OAAO;iBACV;qBAAM,UAAI,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,0CAAE,EAAE,EAAE;oBACtB,MAAM,MAAM,GACR,sDAAsD;wBACtD,GAAG,CAAC,GAAG,CAAC;oBACZ,MAAM,SAAS,GAAG,IAAI,mBAAS,CAC3B,WAAW,EACX,SAAS,EACT,iCAAqB,CACxB,CAAC;oBACF,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACxD,IAAI,EAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAA,EAAE;wBAChB,MAAM,IAAI,qBAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;qBACtC;oBACD,IACI,KAAK,CAAC,SAAS,CACX,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,+BAAmB,CAC5C,KAAK,CAAC,CAAC,EACV;wBACE,IAAI,EAAE,CAAC;wBACP,OAAO;qBACV;yBAAM;wBACH,MAAM,IAAI,qBAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;qBACtC;iBACJ;qBAAM;oBACH,MAAM,IAAI,qBAAW,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;iBAChD;aACJ;YAAC,OAAO,CAAC,EAAE;gBACR,IAAI,CAAC,YAAY,qBAAW,EAAE;oBAC1B,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,EAAE,CAAC,CAAC;oBAC/C,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;iBAC5C;qBAAM;oBACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;iBAChC;aACJ;QACL,CAAC,CAAA,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC,CAAC;AAEF;;;;;;;;;GASG;AACH,SAAgB,gBAAgB,CAC5B,kBAA2C,EAC3C,MAA6B;IAE7B,OAAO,CAAO,GAAY,EAAE,GAAa,EAAE,IAAgB,EAAE,EAAE;QAC3D,IAAI;YACA,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAC5C,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,eAAe,CACzD,MAAM,EACN,QAAQ,CACX,CAAC;YACF,GAAG,CAAC,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;YACvC,IAAI,EAAE,CAAC;SACV;QAAC,OAAO,CAAC,EAAE;YACR,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,EAAE,CAAC,CAAC;YACzD,IAAI,CAAC,YAAY,qBAAW,EAAE;gBAC1B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;aAC5C;iBAAM;gBACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAChB,qEAAqE,CAAC,EAAE,CAC3E,CAAC;aACL;SACJ;IACL,CAAC,CAAA,CAAC;AACN,CAAC;AAxBD,4CAwBC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,gCAAgC,CAC5C,kBAA2C,EAC3C,MAA6B,EAC7B,mBAA4B,IAAI;IAEhC,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAgB,EAAE,EAAE;QACrD,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;YACxD,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,YAA4B,CAAC;YAC7D,IACI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,gBAAgB,MAAK,KAAK;gBACxC,+BAAgB,CAAC,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,CAAC,IAAI,gBAAgB,EAC5D;gBACE,OAAO,IAAI,EAAE,CAAC;aACjB;iBAAM;gBACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAChB,sCAAsC,MAAM,CAAC,YAAY,2BAA2B,CACvF,CAAC;aACL;QACL,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC;AApBD,4EAoBC;AAMD;;;;;;;;;;GAUG;AACH,SAAgB,iBAAiB,CAC7B,kBAA2C,EAC3C,YAAoB,EACpB,eAAqC;IAErC,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAgB,EAAE,EAAE;QACrD,IAAI;YACA,MAAM,MAAM,GAAG;gBACX,YAAY;gBACZ,QAAQ,EAAE,EAAE;aACU,CAAC;YAC3B,IAAI,eAAe,EAAE;gBACjB,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE;oBACvC,MAAM,CAAC,KAAK,GAAG,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;iBAC5C;qBAAM;oBACH,MAAM,CAAC,KAAK,GAAG,eAAe,CAAC;iBAClC;aACJ;YACD,gCAAgC,CAAC,kBAAkB,EAAE,MAAM,EAAE,IAAI,CAAC,CAC9D,GAAG,EACH,GAAG,EACH,IAAI,CACP,CAAC;SACL;QAAC,OAAO,CAAC,EAAE;YACR,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,EAAE,CAAC,CAAC;YAC1D,IAAI,CAAC,YAAY,qBAAW,EAAE;gBAC1B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;aAC5C;iBAAM;gBACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAChB,uCAAuC,CAAC,EAAE,CAC7C,CAAC;aACL;SACJ;IACL,CAAC,CAAC;AACN,CAAC;AAlCD,8CAkCC;AAED;;;;;;;;GAQG;AACH,SAAgB,SAAS,CAAC,SAAiB;IACvC,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAgB,EAAE,EAAE;QACrD,qBAAgB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC;YACpC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE;gBACb,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;gBAC3B,IAAI,EAAE,CAAC;YACX,CAAC;YACD,OAAO,EAAE,GAAG,EAAE;gBACV,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;gBAC9B,IAAI,EAAE,CAAC;YACX,CAAC;SACJ,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC;AAbD,8BAaC;AAED;;;;;;;;GAQG;AACU,QAAA,aAAa,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,CAChD,GAAY,EACZ,GAAa,EACb,IAAgB,EAClB,EAAE,CACA,SAAS,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IAChC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;QACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAChB,+DAA+D,CAClE,CAAC;KACL;SAAM;QACH,OAAO,IAAI,EAAE,CAAC;KACjB;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -20,6 +20,7 @@ const addJwtSecretFromEnvVar_1 = __importDefault(require("../session/addJwtSecre
|
|
|
20
20
|
const mockAuthApiHost_1 = __importDefault(require("./mockAuthApiHost"));
|
|
21
21
|
const ApiClient_1 = __importDefault(require("../authorization-api/ApiClient"));
|
|
22
22
|
const mockUserDataStore_1 = __importDefault(require("./mockUserDataStore"));
|
|
23
|
+
const urijs_1 = __importDefault(require("urijs"));
|
|
23
24
|
chai_1.default.use(chai_as_promised_1.default);
|
|
24
25
|
const expect = chai_1.default.expect;
|
|
25
26
|
const mockUserData = mockUserDataStore_1.default.getData();
|
|
@@ -43,33 +44,50 @@ describe("Test ApiClient.ts", function () {
|
|
|
43
44
|
default: process.env.USER_ID || process.env.npm_package_config_userId
|
|
44
45
|
}).argv);
|
|
45
46
|
const mockHost = new mockAuthApiHost_1.default(argv.authorizationApi, argv.jwtSecret, argv.userId);
|
|
46
|
-
|
|
47
|
+
beforeEach(function () {
|
|
47
48
|
sinon_1.default.stub(console, "error").callsFake(() => { });
|
|
48
49
|
sinon_1.default.stub(console, "warn").callsFake(() => { });
|
|
49
50
|
mockHost.start();
|
|
50
51
|
});
|
|
51
|
-
|
|
52
|
+
afterEach(function () {
|
|
52
53
|
console.error.restore();
|
|
53
54
|
console.warn.restore();
|
|
54
55
|
mockHost.stop();
|
|
55
56
|
});
|
|
56
|
-
it("`lookupUser` should
|
|
57
|
+
it("`lookupUser` should throw 'Unauthorised' error if called without specifying source or sourceId", function () {
|
|
57
58
|
return __awaiter(this, void 0, void 0, function* () {
|
|
58
59
|
const api = new ApiClient_1.default(argv.authorizationApi);
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
60
|
+
try {
|
|
61
|
+
yield api.lookupUser(undefined, "testuser");
|
|
62
|
+
expect.fail("expect an error thrown");
|
|
63
|
+
}
|
|
64
|
+
catch (e) { }
|
|
65
|
+
try {
|
|
66
|
+
yield api.lookupUser("testsource", undefined);
|
|
67
|
+
expect.fail("expect an error thrown");
|
|
68
|
+
}
|
|
69
|
+
catch (e) { }
|
|
66
70
|
});
|
|
67
71
|
});
|
|
68
|
-
it("`lookupUser` should
|
|
72
|
+
it("`lookupUser` should request /public/users API with correct query parameters", function () {
|
|
69
73
|
return __awaiter(this, void 0, void 0, function* () {
|
|
70
|
-
const api = new ApiClient_1.default(argv.authorizationApi
|
|
71
|
-
|
|
72
|
-
|
|
74
|
+
const api = new ApiClient_1.default(argv.authorizationApi);
|
|
75
|
+
let hasCalled = false;
|
|
76
|
+
mockHost.scope
|
|
77
|
+
.get("/public/users")
|
|
78
|
+
.query(true)
|
|
79
|
+
.reply(function (uri, requestBody) {
|
|
80
|
+
const parsedUri = urijs_1.default(uri);
|
|
81
|
+
const queries = parsedUri.search(true);
|
|
82
|
+
expect(queries).to.have.property("source", "source1");
|
|
83
|
+
expect(queries).to.have.property("sourceId", "testuser");
|
|
84
|
+
expect(queries).to.have.property("limit", "1");
|
|
85
|
+
hasCalled = true;
|
|
86
|
+
return [200, JSON.stringify([{ id: "xxx1" }])];
|
|
87
|
+
});
|
|
88
|
+
const user = yield api.lookupUser("source1", "testuser");
|
|
89
|
+
expect(user.valueOrThrow()).to.have.property("id", "xxx1");
|
|
90
|
+
expect(hasCalled).to.be.true;
|
|
73
91
|
});
|
|
74
92
|
});
|
|
75
93
|
it("`getUser` should return 'Unauthorised' error if called without sepecifying user ID", function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildApiClient.spec.js","sourceRoot":"","sources":["../../src/test/buildApiClient.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,kDAA0B;AAC1B,gDAAwB;AACxB,wEAA8C;AAC9C,kDAA0B;AAC1B,+FAAuE;AACvE,wEAAgD;AAChD,+EAAuD;AACvD,4EAAoD;
|
|
1
|
+
{"version":3,"file":"buildApiClient.spec.js","sourceRoot":"","sources":["../../src/test/buildApiClient.spec.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@magda/typescript-common",
|
|
3
3
|
"description": "Common TypeScript code shared between components.",
|
|
4
|
-
"version": "2.0.0-alpha.
|
|
4
|
+
"version": "2.0.0-alpha.4",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"prebuild": "rimraf dist tsconfig.tsbuildinfo",
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
"release": "npm publish || echo \"Skip releasing npm package @magda/typescript-common.\""
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
|
-
"@magda/registry-aspects": "^2.0.0-alpha.
|
|
18
|
-
"@magda/scripts": "^2.0.0-alpha.
|
|
17
|
+
"@magda/registry-aspects": "^2.0.0-alpha.4",
|
|
18
|
+
"@magda/scripts": "^2.0.0-alpha.4",
|
|
19
19
|
"@types/chai": "^4.0.0",
|
|
20
20
|
"@types/chai-as-promised": "^7.1.0",
|
|
21
21
|
"@types/cross-spawn": "^6.0.1",
|