@tellescope/sdk 1.252.0 → 1.252.2
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/lib/cjs/tests/api_tests/calendar_canvas_coding_clear.test.d.ts +6 -0
- package/lib/cjs/tests/api_tests/calendar_canvas_coding_clear.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/calendar_canvas_coding_clear.test.js +139 -0
- package/lib/cjs/tests/api_tests/calendar_canvas_coding_clear.test.js.map +1 -0
- package/lib/cjs/tests/api_tests/integrations_redacted.test.d.ts.map +1 -1
- package/lib/cjs/tests/api_tests/integrations_redacted.test.js +30 -20
- package/lib/cjs/tests/api_tests/integrations_redacted.test.js.map +1 -1
- package/lib/cjs/tests/api_tests/mdi_webhooks.test.d.ts +22 -0
- package/lib/cjs/tests/api_tests/mdi_webhooks.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/mdi_webhooks.test.js +162 -0
- package/lib/cjs/tests/api_tests/mdi_webhooks.test.js.map +1 -0
- package/lib/cjs/tests/api_tests/security/F-0053-cascade-role-rename-cross-tenant.test.d.ts +32 -0
- package/lib/cjs/tests/api_tests/security/F-0053-cascade-role-rename-cross-tenant.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/security/F-0053-cascade-role-rename-cross-tenant.test.js +237 -0
- package/lib/cjs/tests/api_tests/security/F-0053-cascade-role-rename-cross-tenant.test.js.map +1 -0
- package/lib/cjs/tests/api_tests/security/F-0076-self-admin-role-assignment.test.d.ts +38 -0
- package/lib/cjs/tests/api_tests/security/F-0076-self-admin-role-assignment.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/security/F-0076-self-admin-role-assignment.test.js +222 -0
- package/lib/cjs/tests/api_tests/security/F-0076-self-admin-role-assignment.test.js.map +1 -0
- package/lib/cjs/tests/api_tests/user_portal_settings.test.d.ts +6 -0
- package/lib/cjs/tests/api_tests/user_portal_settings.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/user_portal_settings.test.js +301 -0
- package/lib/cjs/tests/api_tests/user_portal_settings.test.js.map +1 -0
- package/lib/cjs/tests/tests.d.ts.map +1 -1
- package/lib/cjs/tests/tests.js +154 -142
- package/lib/cjs/tests/tests.js.map +1 -1
- package/lib/esm/tests/api_tests/calendar_canvas_coding_clear.test.d.ts +6 -0
- package/lib/esm/tests/api_tests/calendar_canvas_coding_clear.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/calendar_canvas_coding_clear.test.js +135 -0
- package/lib/esm/tests/api_tests/calendar_canvas_coding_clear.test.js.map +1 -0
- package/lib/esm/tests/api_tests/integrations_redacted.test.d.ts.map +1 -1
- package/lib/esm/tests/api_tests/integrations_redacted.test.js +30 -20
- package/lib/esm/tests/api_tests/integrations_redacted.test.js.map +1 -1
- package/lib/esm/tests/api_tests/mdi_webhooks.test.d.ts +22 -0
- package/lib/esm/tests/api_tests/mdi_webhooks.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/mdi_webhooks.test.js +158 -0
- package/lib/esm/tests/api_tests/mdi_webhooks.test.js.map +1 -0
- package/lib/esm/tests/api_tests/security/F-0053-cascade-role-rename-cross-tenant.test.d.ts +32 -0
- package/lib/esm/tests/api_tests/security/F-0053-cascade-role-rename-cross-tenant.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/security/F-0053-cascade-role-rename-cross-tenant.test.js +233 -0
- package/lib/esm/tests/api_tests/security/F-0053-cascade-role-rename-cross-tenant.test.js.map +1 -0
- package/lib/esm/tests/api_tests/security/F-0076-self-admin-role-assignment.test.d.ts +38 -0
- package/lib/esm/tests/api_tests/security/F-0076-self-admin-role-assignment.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/security/F-0076-self-admin-role-assignment.test.js +218 -0
- package/lib/esm/tests/api_tests/security/F-0076-self-admin-role-assignment.test.js.map +1 -0
- package/lib/esm/tests/api_tests/user_portal_settings.test.d.ts +6 -0
- package/lib/esm/tests/api_tests/user_portal_settings.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/user_portal_settings.test.js +297 -0
- package/lib/esm/tests/api_tests/user_portal_settings.test.js.map +1 -0
- package/lib/esm/tests/tests.d.ts.map +1 -1
- package/lib/esm/tests/tests.js +154 -142
- package/lib/esm/tests/tests.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/src/tests/api_tests/integrations_redacted.test.ts +8 -0
- package/src/tests/api_tests/security/F-0053-cascade-role-rename-cross-tenant.test.ts +161 -0
- package/src/tests/api_tests/security/F-0076-self-admin-role-assignment.test.ts +165 -0
- package/src/tests/api_tests/user_portal_settings.test.ts +217 -0
- package/src/tests/tests.ts +6 -0
- package/test_generated.pdf +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calendar_canvas_coding_clear.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/calendar_canvas_coding_clear.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAgBnC,eAAO,MAAM,kCAAkC;SAC5B,OAAO;iBAAe,OAAO;mBA2C/C,CAAA"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.calendar_canvas_coding_clear_tests = void 0;
|
|
40
|
+
require('source-map-support').install();
|
|
41
|
+
var sdk_1 = require("../../sdk");
|
|
42
|
+
var testing_1 = require("@tellescope/testing");
|
|
43
|
+
var setup_1 = require("../setup");
|
|
44
|
+
var host = process.env.API_URL || 'http://localhost:8080';
|
|
45
|
+
// Reproduces CU-86e1q4e51: clearing Canvas codings (sending an all-empty-string
|
|
46
|
+
// coding object with replaceObjectFields) on a template/event that previously had
|
|
47
|
+
// them saved must succeed. Pre-fix the backend rejected '' with a 400
|
|
48
|
+
// ("Expecting non-empty string") because the fields used canvasCodingValidator.
|
|
49
|
+
var POPULATED_CODING = { system: 'http://snomed.info/sct', code: '12345', display: 'Example Coding' };
|
|
50
|
+
var EMPTY_CODING = { system: '', code: '', display: '' };
|
|
51
|
+
var calendar_canvas_coding_clear_tests = function (_a) {
|
|
52
|
+
var sdk = _a.sdk;
|
|
53
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
54
|
+
var template, event, _b, _c;
|
|
55
|
+
return __generator(this, function (_d) {
|
|
56
|
+
switch (_d.label) {
|
|
57
|
+
case 0:
|
|
58
|
+
(0, testing_1.log_header)("Calendar Canvas Coding Clear Tests");
|
|
59
|
+
return [4 /*yield*/, sdk.api.calendar_event_templates.createOne({
|
|
60
|
+
title: 'Canvas Coding Clear Template',
|
|
61
|
+
durationInMinutes: 30,
|
|
62
|
+
canvasCoding: POPULATED_CODING,
|
|
63
|
+
canvasReasonCoding: POPULATED_CODING,
|
|
64
|
+
})];
|
|
65
|
+
case 1:
|
|
66
|
+
template = _d.sent();
|
|
67
|
+
return [4 /*yield*/, sdk.api.calendar_events.createOne({
|
|
68
|
+
title: 'Canvas Coding Clear Event',
|
|
69
|
+
durationInMinutes: 30,
|
|
70
|
+
startTimeInMS: Date.now(),
|
|
71
|
+
canvasCoding: POPULATED_CODING,
|
|
72
|
+
canvasReasonCoding: POPULATED_CODING,
|
|
73
|
+
})];
|
|
74
|
+
case 2:
|
|
75
|
+
event = _d.sent();
|
|
76
|
+
_d.label = 3;
|
|
77
|
+
case 3:
|
|
78
|
+
_d.trys.push([3, , 6, 13]);
|
|
79
|
+
return [4 /*yield*/, (0, testing_1.async_test)('Clearing Canvas codings on a calendar_event_template saves successfully', function () { return sdk.api.calendar_event_templates.updateOne(template.id, { canvasCoding: EMPTY_CODING, canvasReasonCoding: EMPTY_CODING }, { replaceObjectFields: true }); }, { onResult: function (t) { var _a, _b; return !((_a = t.canvasCoding) === null || _a === void 0 ? void 0 : _a.code) && !((_b = t.canvasReasonCoding) === null || _b === void 0 ? void 0 : _b.code); } })];
|
|
80
|
+
case 4:
|
|
81
|
+
_d.sent();
|
|
82
|
+
return [4 /*yield*/, (0, testing_1.async_test)('Clearing Canvas codings on a calendar_event saves successfully', function () { return sdk.api.calendar_events.updateOne(event.id, { canvasCoding: EMPTY_CODING, canvasReasonCoding: EMPTY_CODING }, { replaceObjectFields: true }); }, { onResult: function (e) { var _a, _b; return !((_a = e.canvasCoding) === null || _a === void 0 ? void 0 : _a.code) && !((_b = e.canvasReasonCoding) === null || _b === void 0 ? void 0 : _b.code); } })];
|
|
83
|
+
case 5:
|
|
84
|
+
_d.sent();
|
|
85
|
+
return [3 /*break*/, 13];
|
|
86
|
+
case 6:
|
|
87
|
+
_d.trys.push([6, 8, , 9]);
|
|
88
|
+
return [4 /*yield*/, sdk.api.calendar_event_templates.deleteOne(template.id)];
|
|
89
|
+
case 7:
|
|
90
|
+
_d.sent();
|
|
91
|
+
return [3 /*break*/, 9];
|
|
92
|
+
case 8:
|
|
93
|
+
_b = _d.sent();
|
|
94
|
+
return [3 /*break*/, 9];
|
|
95
|
+
case 9:
|
|
96
|
+
_d.trys.push([9, 11, , 12]);
|
|
97
|
+
return [4 /*yield*/, sdk.api.calendar_events.deleteOne(event.id)];
|
|
98
|
+
case 10:
|
|
99
|
+
_d.sent();
|
|
100
|
+
return [3 /*break*/, 12];
|
|
101
|
+
case 11:
|
|
102
|
+
_c = _d.sent();
|
|
103
|
+
return [3 /*break*/, 12];
|
|
104
|
+
case 12: return [7 /*endfinally*/];
|
|
105
|
+
case 13: return [2 /*return*/];
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
exports.calendar_canvas_coding_clear_tests = calendar_canvas_coding_clear_tests;
|
|
111
|
+
// Allow running this test file independently
|
|
112
|
+
if (require.main === module) {
|
|
113
|
+
console.log("\uD83C\uDF10 Using API URL: ".concat(host));
|
|
114
|
+
var sdk_2 = new sdk_1.Session({ host: host });
|
|
115
|
+
var sdkNonAdmin_1 = new sdk_1.Session({ host: host });
|
|
116
|
+
var runTests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
117
|
+
return __generator(this, function (_a) {
|
|
118
|
+
switch (_a.label) {
|
|
119
|
+
case 0: return [4 /*yield*/, (0, setup_1.setup_tests)(sdk_2, sdkNonAdmin_1)];
|
|
120
|
+
case 1:
|
|
121
|
+
_a.sent();
|
|
122
|
+
return [4 /*yield*/, (0, exports.calendar_canvas_coding_clear_tests)({ sdk: sdk_2, sdkNonAdmin: sdkNonAdmin_1 })];
|
|
123
|
+
case 2:
|
|
124
|
+
_a.sent();
|
|
125
|
+
return [2 /*return*/];
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
}); };
|
|
129
|
+
runTests()
|
|
130
|
+
.then(function () {
|
|
131
|
+
console.log("✅ Calendar canvas coding clear test suite completed successfully");
|
|
132
|
+
process.exit(0);
|
|
133
|
+
})
|
|
134
|
+
.catch(function (error) {
|
|
135
|
+
console.error("❌ Calendar canvas coding clear test suite failed:", error);
|
|
136
|
+
process.exit(1);
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=calendar_canvas_coding_clear.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calendar_canvas_coding_clear.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/calendar_canvas_coding_clear.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integrations_redacted.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/integrations_redacted.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAiBnC,eAAO,MAAM,2BAA2B;SAAwC,OAAO;iBAAe,OAAO;
|
|
1
|
+
{"version":3,"file":"integrations_redacted.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/integrations_redacted.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAiBnC,eAAO,MAAM,2BAA2B;SAAwC,OAAO;iBAAe,OAAO;mBAoN5G,CAAA"}
|
|
@@ -63,7 +63,7 @@ var integrations_redacted_tests = function (_a) {
|
|
|
63
63
|
sensitiveIntegrationId = '';
|
|
64
64
|
_b.label = 1;
|
|
65
65
|
case 1:
|
|
66
|
-
_b.trys.push([1, ,
|
|
66
|
+
_b.trys.push([1, , 27, 36]);
|
|
67
67
|
return [4 /*yield*/, sdk.api.integrations.createOne({
|
|
68
68
|
title: 'Test Redacted Integration',
|
|
69
69
|
authentication: { type: 'oauth2', info: { access_token: 'test-access-token', refresh_token: 'test-refresh-token', scope: '', token_type: 'Bearer', expiry_date: new Date().getTime() } },
|
|
@@ -206,38 +206,48 @@ var integrations_redacted_tests = function (_a) {
|
|
|
206
206
|
return [4 /*yield*/, (0, testing_1.async_test)("load_redacted still returns non-sensitive fields", function () { return sdk.api.integrations.load_redacted({}); }, { onResult: function (r) {
|
|
207
207
|
var found = r.integrations.find(function (i) { return i.id === sensitiveIntegrationId; });
|
|
208
208
|
return !!found && found.emailDisabled === true && found.title === 'Test All Sensitive Fields';
|
|
209
|
-
} })
|
|
209
|
+
} })
|
|
210
|
+
// F-0049: connect_stripe must reject caller-supplied accountId (Stripe-account-spoofing defense).
|
|
211
|
+
// Stripe Connect is deprecated in Tellescope; accountId was a test shortcut, kept rejected to preserve SDK shape.
|
|
212
|
+
];
|
|
210
213
|
case 25:
|
|
211
214
|
_b.sent();
|
|
212
|
-
|
|
215
|
+
// F-0049: connect_stripe must reject caller-supplied accountId (Stripe-account-spoofing defense).
|
|
216
|
+
// Stripe Connect is deprecated in Tellescope; accountId was a test shortcut, kept rejected to preserve SDK shape.
|
|
217
|
+
return [4 /*yield*/, (0, testing_1.async_test)("connect_stripe rejects caller-supplied accountId", function () { return sdk.api.integrations.connect_stripe({ countryCode: 'US', accountId: 'acct_someoneElsesAccount' }); }, { shouldError: true, onError: function (e) { return /accountId is not supported/i.test((e === null || e === void 0 ? void 0 : e.message) || (e === null || e === void 0 ? void 0 : e.toString()) || ''); } })];
|
|
213
218
|
case 26:
|
|
214
|
-
|
|
215
|
-
|
|
219
|
+
// F-0049: connect_stripe must reject caller-supplied accountId (Stripe-account-spoofing defense).
|
|
220
|
+
// Stripe Connect is deprecated in Tellescope; accountId was a test shortcut, kept rejected to preserve SDK shape.
|
|
221
|
+
_b.sent();
|
|
222
|
+
return [3 /*break*/, 36];
|
|
216
223
|
case 27:
|
|
217
|
-
|
|
218
|
-
|
|
224
|
+
if (!integrationId) return [3 /*break*/, 31];
|
|
225
|
+
_b.label = 28;
|
|
219
226
|
case 28:
|
|
220
|
-
_b.
|
|
221
|
-
return [
|
|
227
|
+
_b.trys.push([28, 30, , 31]);
|
|
228
|
+
return [4 /*yield*/, sdk.api.integrations.deleteOne(integrationId)];
|
|
222
229
|
case 29:
|
|
230
|
+
_b.sent();
|
|
231
|
+
return [3 /*break*/, 31];
|
|
232
|
+
case 30:
|
|
223
233
|
error_1 = _b.sent();
|
|
224
234
|
console.error('Cleanup error:', error_1);
|
|
225
|
-
return [3 /*break*/,
|
|
226
|
-
case 30:
|
|
227
|
-
if (!sensitiveIntegrationId) return [3 /*break*/, 34];
|
|
228
|
-
_b.label = 31;
|
|
235
|
+
return [3 /*break*/, 31];
|
|
229
236
|
case 31:
|
|
230
|
-
|
|
231
|
-
|
|
237
|
+
if (!sensitiveIntegrationId) return [3 /*break*/, 35];
|
|
238
|
+
_b.label = 32;
|
|
232
239
|
case 32:
|
|
233
|
-
_b.
|
|
234
|
-
return [
|
|
240
|
+
_b.trys.push([32, 34, , 35]);
|
|
241
|
+
return [4 /*yield*/, sdk.api.integrations.deleteOne(sensitiveIntegrationId)];
|
|
235
242
|
case 33:
|
|
243
|
+
_b.sent();
|
|
244
|
+
return [3 /*break*/, 35];
|
|
245
|
+
case 34:
|
|
236
246
|
error_2 = _b.sent();
|
|
237
247
|
console.error('Cleanup error (sensitive integration):', error_2);
|
|
238
|
-
return [3 /*break*/,
|
|
239
|
-
case
|
|
240
|
-
case
|
|
248
|
+
return [3 /*break*/, 35];
|
|
249
|
+
case 35: return [7 /*endfinally*/];
|
|
250
|
+
case 36: return [2 /*return*/];
|
|
241
251
|
}
|
|
242
252
|
});
|
|
243
253
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integrations_redacted.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/integrations_redacted.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"integrations_redacted.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/integrations_redacted.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Session } from "../../sdk";
|
|
2
|
+
/**
|
|
3
|
+
* MD Integrations Webhooks Tests
|
|
4
|
+
*
|
|
5
|
+
* The inbound endpoint is security-first: it authenticates the tenant via the
|
|
6
|
+
* static Authorization token, then verifies the HMAC Signature, BEFORE any DB
|
|
7
|
+
* write or side effect. These tests assert those rejection paths, which don't
|
|
8
|
+
* require a configured MDI integration.
|
|
9
|
+
*
|
|
10
|
+
* NOTE: a full event round-trip (case_approved -> mdiStatus, offering_submitted
|
|
11
|
+
* -> enduser_medications, message_created -> chat, etc.) requires an MDI
|
|
12
|
+
* integration row carrying webhooksSecret + authentication.info.webhook_authorization.
|
|
13
|
+
* That row can only be created through the connect flow against valid MDI
|
|
14
|
+
* Sandbox credentials (add_api_key_integration validates client creds via a live
|
|
15
|
+
* MDI API call), so the end-to-end path is exercised in the Sandbox per the task
|
|
16
|
+
* plan rather than here.
|
|
17
|
+
*/
|
|
18
|
+
export declare const mdi_webhooks_tests: ({ sdk, sdkNonAdmin }: {
|
|
19
|
+
sdk: Session;
|
|
20
|
+
sdkNonAdmin: Session;
|
|
21
|
+
}) => Promise<void>;
|
|
22
|
+
//# sourceMappingURL=mdi_webhooks.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdi_webhooks.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/mdi_webhooks.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAyBnC;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,kBAAkB;SAAuC,OAAO;iBAAe,OAAO;mBAmClG,CAAA"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
+
exports.mdi_webhooks_tests = void 0;
|
|
51
|
+
require('source-map-support').install();
|
|
52
|
+
var sdk_1 = require("../../sdk");
|
|
53
|
+
var testing_1 = require("@tellescope/testing");
|
|
54
|
+
var setup_1 = require("../setup");
|
|
55
|
+
var host = process.env.API_URL || 'http://localhost:8080';
|
|
56
|
+
var mdiUrl = "".concat(host, "/v1/webhooks/mdi");
|
|
57
|
+
/**
|
|
58
|
+
* POST a JSON payload to the MDI webhook endpoint with optional auth/signature headers.
|
|
59
|
+
*/
|
|
60
|
+
var postMDI = function (body, headers) {
|
|
61
|
+
if (headers === void 0) { headers = {}; }
|
|
62
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
63
|
+
var res, data, _a;
|
|
64
|
+
return __generator(this, function (_b) {
|
|
65
|
+
switch (_b.label) {
|
|
66
|
+
case 0: return [4 /*yield*/, fetch(mdiUrl, {
|
|
67
|
+
method: 'POST',
|
|
68
|
+
headers: __assign({ 'Content-Type': 'application/json' }, headers),
|
|
69
|
+
body: JSON.stringify(body),
|
|
70
|
+
})];
|
|
71
|
+
case 1:
|
|
72
|
+
res = _b.sent();
|
|
73
|
+
_b.label = 2;
|
|
74
|
+
case 2:
|
|
75
|
+
_b.trys.push([2, 4, , 5]);
|
|
76
|
+
return [4 /*yield*/, res.text()];
|
|
77
|
+
case 3:
|
|
78
|
+
data = _b.sent();
|
|
79
|
+
return [3 /*break*/, 5];
|
|
80
|
+
case 4:
|
|
81
|
+
_a = _b.sent();
|
|
82
|
+
data = null;
|
|
83
|
+
return [3 /*break*/, 5];
|
|
84
|
+
case 5: return [2 /*return*/, { status: res.status, data: data }];
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
};
|
|
89
|
+
/**
|
|
90
|
+
* MD Integrations Webhooks Tests
|
|
91
|
+
*
|
|
92
|
+
* The inbound endpoint is security-first: it authenticates the tenant via the
|
|
93
|
+
* static Authorization token, then verifies the HMAC Signature, BEFORE any DB
|
|
94
|
+
* write or side effect. These tests assert those rejection paths, which don't
|
|
95
|
+
* require a configured MDI integration.
|
|
96
|
+
*
|
|
97
|
+
* NOTE: a full event round-trip (case_approved -> mdiStatus, offering_submitted
|
|
98
|
+
* -> enduser_medications, message_created -> chat, etc.) requires an MDI
|
|
99
|
+
* integration row carrying webhooksSecret + authentication.info.webhook_authorization.
|
|
100
|
+
* That row can only be created through the connect flow against valid MDI
|
|
101
|
+
* Sandbox credentials (add_api_key_integration validates client creds via a live
|
|
102
|
+
* MDI API call), so the end-to-end path is exercised in the Sandbox per the task
|
|
103
|
+
* plan rather than here.
|
|
104
|
+
*/
|
|
105
|
+
var mdi_webhooks_tests = function (_a) {
|
|
106
|
+
var sdk = _a.sdk, sdkNonAdmin = _a.sdkNonAdmin;
|
|
107
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
108
|
+
var status_1, status_2, status_3, status_4;
|
|
109
|
+
return __generator(this, function (_b) {
|
|
110
|
+
switch (_b.label) {
|
|
111
|
+
case 0:
|
|
112
|
+
(0, testing_1.log_header)("MD Integrations Webhooks Tests");
|
|
113
|
+
return [4 /*yield*/, postMDI({ event_type: 'case_approved', case_id: 'mdi-case-test-1' })];
|
|
114
|
+
case 1:
|
|
115
|
+
status_1 = (_b.sent()).status;
|
|
116
|
+
(0, testing_1.assert)(status_1 === 401, "missing Authorization should 401 (got ".concat(status_1, ")"), "MDI webhook rejects missing Authorization");
|
|
117
|
+
return [4 /*yield*/, postMDI({ event_type: 'case_approved', case_id: 'mdi-case-test-1' }, { 'Authorization': "Bearer not-a-real-mdi-token-".concat(Date.now()) })];
|
|
118
|
+
case 2:
|
|
119
|
+
status_2 = (_b.sent()).status;
|
|
120
|
+
(0, testing_1.assert)(status_2 === 401, "unknown Authorization should 401 (got ".concat(status_2, ")"), "MDI webhook rejects unknown Authorization");
|
|
121
|
+
return [4 /*yield*/, postMDI({ case_id: 'mdi-case-test-1' }, { 'Authorization': "Bearer not-a-real-mdi-token-".concat(Date.now()) })];
|
|
122
|
+
case 3:
|
|
123
|
+
status_3 = (_b.sent()).status;
|
|
124
|
+
(0, testing_1.assert)(status_3 === 400 || status_3 === 401, "missing event_type should 400/401 (got ".concat(status_3, ")"), "MDI webhook rejects payload without event_type");
|
|
125
|
+
return [4 /*yield*/, postMDI({ event_type: 'message_created', patient_id: 'mdi-patient-x', message_id: 'm-1', user_type: 'App\\Models\\User' }, { 'Authorization': "Bearer not-a-real-mdi-token-".concat(Date.now()) })];
|
|
126
|
+
case 4:
|
|
127
|
+
status_4 = (_b.sent()).status;
|
|
128
|
+
(0, testing_1.assert)(status_4 === 401, "message_created with bad auth should 401 (got ".concat(status_4, ")"), "MDI webhook authenticates before patient lookup");
|
|
129
|
+
return [2 /*return*/];
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
});
|
|
133
|
+
};
|
|
134
|
+
exports.mdi_webhooks_tests = mdi_webhooks_tests;
|
|
135
|
+
// Allow running this test file independently
|
|
136
|
+
if (require.main === module) {
|
|
137
|
+
var sdk_2 = new sdk_1.Session({ host: host });
|
|
138
|
+
var sdkNonAdmin_1 = new sdk_1.Session({ host: host });
|
|
139
|
+
var runTests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
140
|
+
return __generator(this, function (_a) {
|
|
141
|
+
switch (_a.label) {
|
|
142
|
+
case 0: return [4 /*yield*/, (0, setup_1.setup_tests)(sdk_2, sdkNonAdmin_1)];
|
|
143
|
+
case 1:
|
|
144
|
+
_a.sent();
|
|
145
|
+
return [4 /*yield*/, (0, exports.mdi_webhooks_tests)({ sdk: sdk_2, sdkNonAdmin: sdkNonAdmin_1 })];
|
|
146
|
+
case 2:
|
|
147
|
+
_a.sent();
|
|
148
|
+
return [2 /*return*/];
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
}); };
|
|
152
|
+
runTests()
|
|
153
|
+
.then(function () {
|
|
154
|
+
console.log("✅ MD Integrations webhooks test suite completed successfully");
|
|
155
|
+
process.exit(0);
|
|
156
|
+
})
|
|
157
|
+
.catch(function (error) {
|
|
158
|
+
console.error("❌ MD Integrations webhooks test suite failed:", error);
|
|
159
|
+
process.exit(1);
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
//# sourceMappingURL=mdi_webhooks.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mdi_webhooks.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/mdi_webhooks.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Session } from "../../../sdk";
|
|
2
|
+
/**
|
|
3
|
+
* Tenant-boundary guard for cascade_role_rename (relates to security-audit finding F-0053,
|
|
4
|
+
* which was investigated and closed as a FALSE POSITIVE — see that file for the code trace).
|
|
5
|
+
*
|
|
6
|
+
* The `cascade_role_rename` side-effect handler
|
|
7
|
+
* ([event_handlers_v2/role_based_access_permissions.ts](packages/private/api/api/v1/event_handlers_v2/role_based_access_permissions.ts))
|
|
8
|
+
* runs when a `role_based_access_permissions` doc's `role` field changes. It finds every user
|
|
9
|
+
* with the old role name (via `DBUnrestricted.users`) and rewrites their `roles` array, then
|
|
10
|
+
* deauthenticates them. F-0053 hypothesized this query was globally cross-tenant. It is NOT:
|
|
11
|
+
* `DBUnrestricted` bypasses per-user/per-role RBAC but is STILL scoped to the acting session's
|
|
12
|
+
* `businessId` (see `modifyFilterForAccessConstraint` injecting `{ businessId }` at
|
|
13
|
+
* database.ts:1761-1763, reached via the `unrestricted: true` branch at database.ts:2137-2144).
|
|
14
|
+
*
|
|
15
|
+
* This test locks that boundary in place so a future refactor of `DBUnrestricted` semantics
|
|
16
|
+
* can't silently turn the cascade into a cross-tenant write:
|
|
17
|
+
* 1. Tenant A creates a role `ROLE_OLD` and assigns it to a Tenant A user (positive control).
|
|
18
|
+
* 2. Tenant B (separate businessId) has a user whose roles include the SAME `ROLE_OLD`.
|
|
19
|
+
* 3. Tenant A renames the role `ROLE_OLD` -> `ROLE_NEW`.
|
|
20
|
+
* 4. Assert the Tenant B user's roles are UNCHANGED (still `[ROLE_OLD]`) <-- guards the tenant boundary.
|
|
21
|
+
* 5. Assert the Tenant A user's roles ARE renamed to `[ROLE_NEW]` <-- same-tenant cascade works.
|
|
22
|
+
*
|
|
23
|
+
* Expected on current (correct) code: BOTH assertions pass. A regression that drops the
|
|
24
|
+
* `businessId` scoping would flip assertion #4 to red (Tenant B user becomes `[ROLE_NEW]`).
|
|
25
|
+
*
|
|
26
|
+
* A collision-proof unique role name (timestamped) is used so the test never touches real roles.
|
|
27
|
+
*/
|
|
28
|
+
export declare const cascade_role_rename_cross_tenant_tests: ({ sdk }: {
|
|
29
|
+
sdk: Session;
|
|
30
|
+
sdkNonAdmin: Session;
|
|
31
|
+
}) => Promise<void>;
|
|
32
|
+
//# sourceMappingURL=F-0053-cascade-role-rename-cross-tenant.test.d.ts.map
|
package/lib/cjs/tests/api_tests/security/F-0053-cascade-role-rename-cross-tenant.test.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"F-0053-cascade-role-rename-cross-tenant.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/api_tests/security/F-0053-cascade-role-rename-cross-tenant.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAetC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,sCAAsC;SAA2B,OAAO;iBAAe,OAAO;mBA+F1G,CAAA"}
|