@northern.tech/testing 0.19.2 → 0.19.3
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/public/baseTestConfig.json +3 -0
- package/dist/requestHandlers/deploymentHandlers.d.ts +1 -1
- package/dist/requestHandlers/deploymentHandlers.js +1 -1
- package/dist/requestHandlers/deploymentHandlers.js.map +1 -1
- package/dist/requestHandlers/deviceHandlers.d.ts +1 -1
- package/dist/requestHandlers/deviceHandlers.js +1 -1
- package/dist/requestHandlers/deviceHandlers.js.map +1 -1
- package/dist/requestHandlers/monitorHandlers.d.ts +1 -1
- package/dist/requestHandlers/monitorHandlers.js +1 -1
- package/dist/requestHandlers/monitorHandlers.js.map +1 -1
- package/dist/requestHandlers/organizationHandlers.d.ts +1 -1
- package/dist/requestHandlers/organizationHandlers.js +1 -1
- package/dist/requestHandlers/organizationHandlers.js.map +1 -1
- package/dist/requestHandlers/releaseHandlers.d.ts +1 -1
- package/dist/requestHandlers/releaseHandlers.js +1 -1
- package/dist/requestHandlers/releaseHandlers.js.map +1 -1
- package/dist/requestHandlers/requestHandlers.d.ts +1 -1
- package/dist/requestHandlers/requestHandlers.js +1 -1
- package/dist/requestHandlers/requestHandlers.js.map +1 -1
- package/dist/requestHandlers/userHandlers.d.ts +1 -1
- package/dist/requestHandlers/userHandlers.js +1 -1
- package/dist/requestHandlers/userHandlers.js.map +1 -1
- package/dist/setupTests.d.ts +0 -7
- package/dist/setupTests.js +1 -11
- package/dist/setupTests.js.map +1 -1
- package/package.json +5 -7
- package/dist/mockData.cjs +0 -1408
- package/dist/mockData.cjs.map +0 -1
- package/dist/mockData.d.cts +0 -721
- package/dist/openapi.yaml.d.cjs +0 -0
- package/dist/openapi.yaml.d.cts +0 -4
- package/dist/requestHandlers/deploymentHandlers.cjs +0 -193
- package/dist/requestHandlers/deploymentHandlers.cjs.map +0 -1
- package/dist/requestHandlers/deploymentHandlers.d.cts +0 -4
- package/dist/requestHandlers/deviceHandlers.cjs +0 -467
- package/dist/requestHandlers/deviceHandlers.cjs.map +0 -1
- package/dist/requestHandlers/deviceHandlers.d.cts +0 -31
- package/dist/requestHandlers/monitorHandlers.cjs +0 -23
- package/dist/requestHandlers/monitorHandlers.cjs.map +0 -1
- package/dist/requestHandlers/monitorHandlers.d.cts +0 -4
- package/dist/requestHandlers/organizationHandlers.cjs +0 -313
- package/dist/requestHandlers/organizationHandlers.cjs.map +0 -1
- package/dist/requestHandlers/organizationHandlers.d.cts +0 -4
- package/dist/requestHandlers/releaseHandlers.cjs +0 -244
- package/dist/requestHandlers/releaseHandlers.cjs.map +0 -1
- package/dist/requestHandlers/releaseHandlers.d.cts +0 -4
- package/dist/requestHandlers/requestHandlers.cjs +0 -27
- package/dist/requestHandlers/requestHandlers.cjs.map +0 -1
- package/dist/requestHandlers/requestHandlers.d.cts +0 -4
- package/dist/requestHandlers/userHandlers.cjs +0 -164
- package/dist/requestHandlers/userHandlers.cjs.map +0 -1
- package/dist/requestHandlers/userHandlers.d.cts +0 -4
- package/dist/requestHandlers/validation.cjs +0 -4
- package/dist/requestHandlers/validation.d.cts +0 -5
- package/dist/setupTests.cjs +0 -172
- package/dist/setupTests.cjs.map +0 -1
- package/dist/setupTests.d.cts +0 -76
- package/dist/theme/light.cjs +0 -9
- package/dist/theme/light.cjs.map +0 -1
- package/dist/theme/light.d.cts +0 -5
- package/dist/theme/mui.d.cjs +0 -0
- package/dist/theme/mui.d.cts +0 -11
- package/dist/utils.cjs +0 -22
- package/dist/utils.cjs.map +0 -1
- package/dist/utils.d.cts +0 -5
- package/dist/validation-DAMYMdv9.cjs +0 -75
- package/dist/validation-DAMYMdv9.cjs.map +0 -1
|
@@ -1,313 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_mockData = require("../mockData.cjs");
|
|
3
|
-
const require_validation = require("../validation-DAMYMdv9.cjs");
|
|
4
|
-
let _northern_tech_utils_constants = require("@northern.tech/utils/constants");
|
|
5
|
-
let msw = require("msw");
|
|
6
|
-
//#region src/requestHandlers/organizationHandlers.ts
|
|
7
|
-
const PLANS = {
|
|
8
|
-
os: {
|
|
9
|
-
id: "os",
|
|
10
|
-
name: "Basic"
|
|
11
|
-
},
|
|
12
|
-
professional: {
|
|
13
|
-
id: "professional",
|
|
14
|
-
name: "Professional"
|
|
15
|
-
},
|
|
16
|
-
enterprise: {
|
|
17
|
-
id: "enterprise",
|
|
18
|
-
name: "Enterprise"
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
const releasesSample = {
|
|
22
|
-
lts: ["3.3"],
|
|
23
|
-
releases: {
|
|
24
|
-
"3.2": {
|
|
25
|
-
"3.2.1": {
|
|
26
|
-
release_date: "2022-02-02",
|
|
27
|
-
release: "3.2.1",
|
|
28
|
-
repos: [
|
|
29
|
-
{
|
|
30
|
-
name: "integration",
|
|
31
|
-
version: "1.2.3"
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
name: "mender",
|
|
35
|
-
version: "3.2.1"
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
name: "mender-artifact",
|
|
39
|
-
version: "1.3.7"
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
name: "service",
|
|
43
|
-
version: "3.0.0"
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
name: "other-service",
|
|
47
|
-
version: "1.1.0"
|
|
48
|
-
}
|
|
49
|
-
]
|
|
50
|
-
},
|
|
51
|
-
"3.2.0": {
|
|
52
|
-
release_date: "2022-01-24",
|
|
53
|
-
release: "3.2.0",
|
|
54
|
-
repos: [{
|
|
55
|
-
name: "service",
|
|
56
|
-
version: "3.0.0"
|
|
57
|
-
}, {
|
|
58
|
-
name: "another-service",
|
|
59
|
-
version: "4.1.0"
|
|
60
|
-
}]
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
|
-
"2.7": { "2.7.2": {
|
|
64
|
-
release_date: "2021-11-04",
|
|
65
|
-
release: "2.7.2",
|
|
66
|
-
repos: [{
|
|
67
|
-
name: "service",
|
|
68
|
-
version: "1.1.0"
|
|
69
|
-
}, {
|
|
70
|
-
name: "more-service",
|
|
71
|
-
version: "1.0.2"
|
|
72
|
-
}]
|
|
73
|
-
} },
|
|
74
|
-
"1.0": {
|
|
75
|
-
supported_until: "2018-02",
|
|
76
|
-
"1.0.1": {
|
|
77
|
-
release_date: "2017-04-03",
|
|
78
|
-
release: "1.0.1",
|
|
79
|
-
repos: [{
|
|
80
|
-
name: "service",
|
|
81
|
-
version: "1.0.1"
|
|
82
|
-
}]
|
|
83
|
-
},
|
|
84
|
-
"1.0.0": {
|
|
85
|
-
release_date: "2017-02-16",
|
|
86
|
-
release: "1.0.0",
|
|
87
|
-
repos: [{
|
|
88
|
-
name: "mono-service",
|
|
89
|
-
version: "1.0.0"
|
|
90
|
-
}]
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
},
|
|
94
|
-
saas: [
|
|
95
|
-
{
|
|
96
|
-
tag: "saas-v2022.03.10",
|
|
97
|
-
date: "2022-03-09"
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
tag: "saas-v2020.09.25",
|
|
101
|
-
date: "2020-09-24"
|
|
102
|
-
},
|
|
103
|
-
{
|
|
104
|
-
tag: "saas-v2020.07.09",
|
|
105
|
-
date: "2020-07-09"
|
|
106
|
-
}
|
|
107
|
-
]
|
|
108
|
-
};
|
|
109
|
-
const tagsSample = [{
|
|
110
|
-
name: "saas-v2023.05.02",
|
|
111
|
-
more: "here"
|
|
112
|
-
}];
|
|
113
|
-
const signupHandler = require_validation.validated(async ({ request }) => {
|
|
114
|
-
const signup = await request.json();
|
|
115
|
-
if ([
|
|
116
|
-
"email",
|
|
117
|
-
"organization",
|
|
118
|
-
"plan"
|
|
119
|
-
].every((item) => !!signup[item])) return msw.HttpResponse.text("test");
|
|
120
|
-
return new msw.HttpResponse(null, { status: 400 });
|
|
121
|
-
});
|
|
122
|
-
const invoicePreviewBasic = {
|
|
123
|
-
id: "upcoming_in_1RlAkbFlFfXikjZVOHK5VQx0",
|
|
124
|
-
period_start: "2025-07-15T15:25:22Z",
|
|
125
|
-
period_end: "2025-08-15T15:25:22Z",
|
|
126
|
-
total: 3200,
|
|
127
|
-
currency: "usd",
|
|
128
|
-
lines: [{
|
|
129
|
-
description: "50 device × Mender Basic (Tier 1 at $0.00 / month)",
|
|
130
|
-
amount: 0,
|
|
131
|
-
currency: "usd",
|
|
132
|
-
product: "mender_standard",
|
|
133
|
-
quantity: 50,
|
|
134
|
-
price_id: "price_1PYktlFlFfXikjZVh2aNHp7i"
|
|
135
|
-
}, {
|
|
136
|
-
description: "Mender Basic (Tier 1 at $32.00 / month)",
|
|
137
|
-
amount: 3200,
|
|
138
|
-
currency: "usd",
|
|
139
|
-
product: "mender_standard",
|
|
140
|
-
quantity: 0,
|
|
141
|
-
price_id: "price_1PYktlFlFfXikjZVh2aNHp7i"
|
|
142
|
-
}]
|
|
143
|
-
};
|
|
144
|
-
const subscriptionBasic = {
|
|
145
|
-
id: "sub_1RlAjOFlFfXikjZVj5BvpJE4",
|
|
146
|
-
status: "active",
|
|
147
|
-
plan: "os",
|
|
148
|
-
products: [{
|
|
149
|
-
name: "mender_standard",
|
|
150
|
-
quantity: 50
|
|
151
|
-
}]
|
|
152
|
-
};
|
|
153
|
-
const organizationHandlers = [
|
|
154
|
-
msw.http.get("/tags.json", () => msw.HttpResponse.json(tagsSample)),
|
|
155
|
-
msw.http.get("/versions.json", () => msw.HttpResponse.json(releasesSample)),
|
|
156
|
-
msw.http.get(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/tenants/me`, () => msw.HttpResponse.json(require_mockData.mockApiResponses.organization.organization)),
|
|
157
|
-
msw.http.get(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/tenants/me/token`, () => msw.HttpResponse.json({ tenant_token: require_mockData.mockApiResponses.organization.tenantToken })),
|
|
158
|
-
msw.http.put(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/tenants/:tenantId/child`, require_validation.validated(() => new msw.HttpResponse(null, { status: 200 }))),
|
|
159
|
-
msw.http.post(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/tenants/:tenantId/cancel`, require_validation.validated(() => new msw.HttpResponse(null, { status: 200 }))),
|
|
160
|
-
msw.http.post(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/tenants/trial`, signupHandler),
|
|
161
|
-
msw.http.post(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/tenants`, async ({ request }) => {
|
|
162
|
-
const { users } = await request.json();
|
|
163
|
-
const { email } = users[0];
|
|
164
|
-
if (email.includes("bad")) return new msw.HttpResponse(null, { status: 553 });
|
|
165
|
-
return new msw.HttpResponse(null, { status: 200 });
|
|
166
|
-
}),
|
|
167
|
-
msw.http.post(`https://hosted.mender.io${_northern_tech_utils_constants.tenantadmApiUrlv2}/tenants/trial`, signupHandler),
|
|
168
|
-
msw.http.get(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/tenants`, () => msw.HttpResponse.json(require_mockData.tenants)),
|
|
169
|
-
msw.http.get(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/billing`, () => msw.HttpResponse.json({ card: {
|
|
170
|
-
last4: "7890",
|
|
171
|
-
exp_month: 1,
|
|
172
|
-
exp_year: 2024,
|
|
173
|
-
brand: "testCorp"
|
|
174
|
-
} })),
|
|
175
|
-
msw.http.get(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/billing/profile`, () => msw.HttpResponse.json({
|
|
176
|
-
name: "company",
|
|
177
|
-
email: "test@test.com",
|
|
178
|
-
address: {
|
|
179
|
-
state: "OSLO",
|
|
180
|
-
line1: "Blindern",
|
|
181
|
-
country: "NO",
|
|
182
|
-
city: "OSLO",
|
|
183
|
-
postal_code: "0123"
|
|
184
|
-
},
|
|
185
|
-
shipping: { address: {
|
|
186
|
-
state: "OSLO",
|
|
187
|
-
line1: "Blindern",
|
|
188
|
-
country: "NO",
|
|
189
|
-
city: "OSLO",
|
|
190
|
-
postal_code: "0123"
|
|
191
|
-
} }
|
|
192
|
-
})),
|
|
193
|
-
msw.http.post(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/billing/card`, require_validation.validated(() => msw.HttpResponse.json({
|
|
194
|
-
intent_id: require_mockData.mockApiResponses.organization.intentId,
|
|
195
|
-
secret: "testSecret"
|
|
196
|
-
}))),
|
|
197
|
-
msw.http.post(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/billing/card/:intentId/confirm`, require_validation.validated(({ params: { intentId } }) => new msw.HttpResponse(null, { status: intentId == require_mockData.mockApiResponses.organization.intentId ? 200 : 540 }))),
|
|
198
|
-
msw.http.post(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/tenants/:tenantId/upgrade/:status`, async ({ params: { status, tenantId }, request }) => {
|
|
199
|
-
if (tenantId != require_mockData.mockApiResponses.organization.organization.id || ![
|
|
200
|
-
"cancel",
|
|
201
|
-
"complete",
|
|
202
|
-
"start"
|
|
203
|
-
].includes(status)) return new msw.HttpResponse(null, { status: 541 });
|
|
204
|
-
if (status === "start") return msw.HttpResponse.json({ secret: "testSecret" });
|
|
205
|
-
let plan;
|
|
206
|
-
try {
|
|
207
|
-
plan = (await request.json()).plan;
|
|
208
|
-
} catch {}
|
|
209
|
-
if (plan && !Object.keys(PLANS).includes(plan)) return new msw.HttpResponse(null, { status: 542 });
|
|
210
|
-
return new msw.HttpResponse(null, { status: 200 });
|
|
211
|
-
}),
|
|
212
|
-
msw.http.post(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/tenants/:tenantId/plan`, require_validation.validated(async ({ params: { tenantId }, request }) => {
|
|
213
|
-
const body = await request.json();
|
|
214
|
-
const expectedKeys = [
|
|
215
|
-
"current_plan",
|
|
216
|
-
"requested_plan",
|
|
217
|
-
"current_addons",
|
|
218
|
-
"requested_addons",
|
|
219
|
-
"user_message"
|
|
220
|
-
];
|
|
221
|
-
if (tenantId != require_mockData.mockApiResponses.organization.organization.id || !Object.keys(body).every((key) => expectedKeys.includes(key))) return new msw.HttpResponse(null, { status: 544 });
|
|
222
|
-
if (body.requested_plan && !Object.values(PLANS).some((item) => item.name === body.requested_plan)) return new msw.HttpResponse(null, { status: 545 });
|
|
223
|
-
return new msw.HttpResponse(null, { status: 200 });
|
|
224
|
-
})),
|
|
225
|
-
msw.http.post(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/contact/support`, require_validation.validated(async ({ request }) => {
|
|
226
|
-
const { subject, body } = await request.json();
|
|
227
|
-
if (!(subject && body)) return new msw.HttpResponse(null, { status: 543 });
|
|
228
|
-
return new msw.HttpResponse(null, { status: 200 });
|
|
229
|
-
})),
|
|
230
|
-
msw.http.patch(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/billing/profile`, require_validation.validated(() => new msw.HttpResponse(null, { status: 200 }))),
|
|
231
|
-
msw.http.post(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/billing/profile`, require_validation.validated(() => new msw.HttpResponse(null, { status: 200 }))),
|
|
232
|
-
msw.http.post(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/billing/subscription`, require_validation.validated(() => new msw.HttpResponse(null, { status: 202 }))),
|
|
233
|
-
msw.http.post(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/billing/subscription/invoices/preview`, () => msw.HttpResponse.json(invoicePreviewBasic)),
|
|
234
|
-
msw.http.get(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/billing/subscription`, () => msw.HttpResponse.json(subscriptionBasic)),
|
|
235
|
-
msw.http.get(`${_northern_tech_utils_constants.tenantadmApiUrlv2}/billing/products`, () => msw.HttpResponse.json(require_mockData.mockApiResponses.organization.products)),
|
|
236
|
-
msw.http.get(`${_northern_tech_utils_constants.auditLogsApiUrl}/logs`, ({ request }) => {
|
|
237
|
-
const { searchParams } = new URL(request.url);
|
|
238
|
-
if (Number(searchParams.get("per_page")) === 500) return msw.HttpResponse.json([{
|
|
239
|
-
meta: require_mockData.mockApiResponses.organization.auditlog.events[2].meta,
|
|
240
|
-
time: require_mockData.mockApiResponses.organization.auditlog.events[1].time,
|
|
241
|
-
action: "close_terminal"
|
|
242
|
-
}]);
|
|
243
|
-
return new msw.HttpResponse(JSON.stringify(require_mockData.mockApiResponses.organization.auditlog.events), { headers: { [_northern_tech_utils_constants.headerNames.total]: require_mockData.mockApiResponses.organization.auditlog.events.length } });
|
|
244
|
-
}),
|
|
245
|
-
msw.http.get(`${_northern_tech_utils_constants.auditLogsApiUrl}/logs/export`, () => msw.HttpResponse.text(`action,actor.id,actor.type,actor.email,actor.identity_data,object.id,object.type,object.user.email,object.deployment.name,object.deployment.artifact_name,change
|
|
246
|
-
update,5c56c2ed-2a9a-5de9-bb86-cf38b3d4a5e1,user,test@example.coim,,067f23a9-76a5-5585-b119-32402a120978,user,test@example.com,,,"Update user 067f23a9-76a5-5585-b119-32402a120978 (test@example.com).
|
|
247
|
-
Diff:
|
|
248
|
-
--- Original
|
|
249
|
-
+++ Current
|
|
250
|
-
@@ -9 +9,2 @@
|
|
251
|
-
- ""RBAC_ROLE_OBSERVER""
|
|
252
|
-
+ ""RBAC_ROLE_OBSERVER"",
|
|
253
|
-
+ ""RBAC_ROLE_PERMIT_ALL""
|
|
254
|
-
"
|
|
255
|
-
`)),
|
|
256
|
-
msw.http.get(`${_northern_tech_utils_constants.iotManagerBaseURL}/integrations`, () => msw.HttpResponse.json([{
|
|
257
|
-
connection_string: "something_else",
|
|
258
|
-
id: 1,
|
|
259
|
-
provider: "iot-hub"
|
|
260
|
-
}, {
|
|
261
|
-
id: 2,
|
|
262
|
-
provider: "iot-core",
|
|
263
|
-
something: "new"
|
|
264
|
-
}])),
|
|
265
|
-
msw.http.post(`${_northern_tech_utils_constants.iotManagerBaseURL}/integrations`, require_validation.validated(() => msw.HttpResponse.json([{
|
|
266
|
-
connection_string: "something_else",
|
|
267
|
-
provider: "iot-hub"
|
|
268
|
-
}]))),
|
|
269
|
-
msw.http.put(`${_northern_tech_utils_constants.iotManagerBaseURL}/integrations/:integrationId`, require_validation.validated(({ params: { integrationId } }) => {
|
|
270
|
-
if (!integrationId) return new msw.HttpResponse(null, { status: 547 });
|
|
271
|
-
return new msw.HttpResponse(null, { status: 200 });
|
|
272
|
-
})),
|
|
273
|
-
msw.http.put(`${_northern_tech_utils_constants.iotManagerBaseURL}/integrations/:integrationId/credentials`, require_validation.validated(({ params: { integrationId } }) => {
|
|
274
|
-
if (!integrationId) return new msw.HttpResponse(null, { status: 548 });
|
|
275
|
-
return new msw.HttpResponse(null, { status: 200 });
|
|
276
|
-
})),
|
|
277
|
-
msw.http.delete(`${_northern_tech_utils_constants.iotManagerBaseURL}/integrations/:integrationId`, ({ params: { integrationId } }) => {
|
|
278
|
-
if (!integrationId) return new msw.HttpResponse(null, { status: 549 });
|
|
279
|
-
return new msw.HttpResponse(null, { status: 200 });
|
|
280
|
-
}),
|
|
281
|
-
msw.http.get(`${_northern_tech_utils_constants.iotManagerBaseURL}/events`, ({ request }) => {
|
|
282
|
-
const { searchParams } = new URL(request.url);
|
|
283
|
-
const page = Number(searchParams.get("page"));
|
|
284
|
-
const perPage = Number(searchParams.get("per_page"));
|
|
285
|
-
return msw.HttpResponse.json(require_mockData.webhookEvents.slice((page - 1) * perPage, page * perPage), { headers: { [_northern_tech_utils_constants.headerNames.total]: `${require_mockData.webhookEvents.length}` } });
|
|
286
|
-
}),
|
|
287
|
-
msw.http.get(_northern_tech_utils_constants.ssoIdpApiUrlv1, () => msw.HttpResponse.json([{
|
|
288
|
-
id: "1",
|
|
289
|
-
issuer: "https://samltest.id/saml/idp",
|
|
290
|
-
valid_until: "2038-08-24T21:14:09Z"
|
|
291
|
-
}, {
|
|
292
|
-
id: "2",
|
|
293
|
-
issuer: "https://samltest2.id/saml/idp",
|
|
294
|
-
valid_until: "2030-10-24T21:14:09Z"
|
|
295
|
-
}])),
|
|
296
|
-
msw.http.post(_northern_tech_utils_constants.ssoIdpApiUrlv1, require_validation.validated(() => new msw.HttpResponse(null, { status: 200 }))),
|
|
297
|
-
msw.http.get(`${_northern_tech_utils_constants.ssoIdpApiUrlv1}/:configId`, ({ params: { configId } }) => {
|
|
298
|
-
if (!configId) return new msw.HttpResponse(null, { status: 550 });
|
|
299
|
-
return msw.HttpResponse.json({
|
|
300
|
-
email: "user@acme.com",
|
|
301
|
-
password: "mypass1234",
|
|
302
|
-
login: { google: "bob@gmail.com" },
|
|
303
|
-
config: "<div>not quite right</div>"
|
|
304
|
-
});
|
|
305
|
-
}),
|
|
306
|
-
msw.http.put(`${_northern_tech_utils_constants.ssoIdpApiUrlv1}/:configId`, require_validation.validated(({ params: { configId } }) => new msw.HttpResponse(null, { status: configId ? 200 : 551 }))),
|
|
307
|
-
msw.http.delete(`${_northern_tech_utils_constants.ssoIdpApiUrlv1}/:configId`, ({ params: { configId } }) => new msw.HttpResponse(null, { status: configId ? 200 : 552 })),
|
|
308
|
-
msw.http.get(_northern_tech_utils_constants.ssoEndpointsApiUrlv1, () => msw.HttpResponse.json(require_mockData.ssoEndpoint))
|
|
309
|
-
];
|
|
310
|
-
//#endregion
|
|
311
|
-
exports.organizationHandlers = organizationHandlers;
|
|
312
|
-
|
|
313
|
-
//# sourceMappingURL=organizationHandlers.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"organizationHandlers.cjs","names":["validated","HttpResponse","http","tenantadmApiUrlv2","mockApiResponses","tenants","auditLogsApiUrl","headerNames","iotManagerBaseURL","webhookEvents","ssoIdpApiUrlv1","ssoEndpointsApiUrlv1","ssoEndpoint"],"sources":["../../src/requestHandlers/organizationHandlers.ts"],"sourcesContent":["// Copyright 2020 Northern.tech AS\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n//@ts-nocheck\nimport { auditLogsApiUrl, headerNames, iotManagerBaseURL, ssoEndpointsApiUrlv1, ssoIdpApiUrlv1, tenantadmApiUrlv2 } from '@northern.tech/utils/constants';\nimport { HttpResponse, http } from 'msw';\n\nimport { mockApiResponses, ssoEndpoint, tenants, webhookEvents } from '../mockData';\nimport { validated } from './validation';\n\nconst PLANS = {\n os: { id: 'os', name: 'Basic' },\n professional: { id: 'professional', name: 'Professional' },\n enterprise: { id: 'enterprise', name: 'Enterprise' }\n};\n\nconst releasesSample = {\n lts: ['3.3'],\n releases: {\n '3.2': {\n '3.2.1': {\n release_date: '2022-02-02',\n release: '3.2.1',\n repos: [\n { name: 'integration', version: '1.2.3' },\n { name: 'mender', version: '3.2.1' },\n { name: 'mender-artifact', version: '1.3.7' },\n { name: 'service', version: '3.0.0' },\n { name: 'other-service', version: '1.1.0' }\n ]\n },\n '3.2.0': {\n release_date: '2022-01-24',\n release: '3.2.0',\n repos: [\n { name: 'service', version: '3.0.0' },\n { name: 'another-service', version: '4.1.0' }\n ]\n }\n },\n '2.7': {\n '2.7.2': {\n release_date: '2021-11-04',\n release: '2.7.2',\n repos: [\n { name: 'service', version: '1.1.0' },\n { name: 'more-service', version: '1.0.2' }\n ]\n }\n },\n '1.0': {\n supported_until: '2018-02',\n '1.0.1': {\n release_date: '2017-04-03',\n release: '1.0.1',\n repos: [{ name: 'service', version: '1.0.1' }]\n },\n '1.0.0': {\n release_date: '2017-02-16',\n release: '1.0.0',\n repos: [{ name: 'mono-service', version: '1.0.0' }]\n }\n }\n },\n saas: [\n { tag: 'saas-v2022.03.10', date: '2022-03-09' },\n { tag: 'saas-v2020.09.25', date: '2020-09-24' },\n { tag: 'saas-v2020.07.09', date: '2020-07-09' }\n ]\n};\n\nconst tagsSample = [{ name: 'saas-v2023.05.02', more: 'here' }];\n\nconst signupHandler = validated(async ({ request }) => {\n const signup = await request.json();\n if (['email', 'organization', 'plan'].every(item => !!signup[item])) {\n return HttpResponse.text('test');\n }\n return new HttpResponse(null, { status: 400 });\n});\n\nconst invoicePreviewBasic = {\n id: 'upcoming_in_1RlAkbFlFfXikjZVOHK5VQx0',\n period_start: '2025-07-15T15:25:22Z',\n period_end: '2025-08-15T15:25:22Z',\n total: 3200,\n currency: 'usd',\n lines: [\n {\n description: '50 device × Mender Basic (Tier 1 at $0.00 / month)',\n amount: 0,\n currency: 'usd',\n product: 'mender_standard',\n quantity: 50,\n price_id: 'price_1PYktlFlFfXikjZVh2aNHp7i'\n },\n {\n description: 'Mender Basic (Tier 1 at $32.00 / month)',\n amount: 3200,\n currency: 'usd',\n product: 'mender_standard',\n quantity: 0,\n price_id: 'price_1PYktlFlFfXikjZVh2aNHp7i'\n }\n ]\n};\nconst subscriptionBasic = {\n id: 'sub_1RlAjOFlFfXikjZVj5BvpJE4',\n status: 'active',\n plan: 'os',\n products: [\n {\n name: 'mender_standard',\n quantity: 50\n }\n ]\n};\n\nexport const organizationHandlers = [\n http.get('/tags.json', () => HttpResponse.json(tagsSample)),\n http.get('/versions.json', () => HttpResponse.json(releasesSample)),\n http.get(`${tenantadmApiUrlv2}/tenants/me`, () => HttpResponse.json(mockApiResponses.organization.organization)),\n http.get(`${tenantadmApiUrlv2}/tenants/me/token`, () => HttpResponse.json({ tenant_token: mockApiResponses.organization.tenantToken })),\n http.put(\n `${tenantadmApiUrlv2}/tenants/:tenantId/child`,\n validated(() => new HttpResponse(null, { status: 200 }))\n ),\n http.post(\n `${tenantadmApiUrlv2}/tenants/:tenantId/cancel`,\n validated(() => new HttpResponse(null, { status: 200 }))\n ),\n http.post(`${tenantadmApiUrlv2}/tenants/trial`, signupHandler),\n // TODO: add validation once spec is fixed (accepts `device_limits`)\n http.post(`${tenantadmApiUrlv2}/tenants`, async ({ request }) => {\n const { users } = await request.json();\n const { email } = users[0];\n if (email.includes('bad')) {\n return new HttpResponse(null, { status: 553 });\n }\n return new HttpResponse(null, { status: 200 });\n }),\n http.post(`https://hosted.mender.io${tenantadmApiUrlv2}/tenants/trial`, signupHandler),\n http.get(`${tenantadmApiUrlv2}/tenants`, () => HttpResponse.json(tenants)),\n http.get(`${tenantadmApiUrlv2}/billing`, () => HttpResponse.json({ card: { last4: '7890', exp_month: 1, exp_year: 2024, brand: 'testCorp' } })),\n http.get(`${tenantadmApiUrlv2}/billing/profile`, () =>\n HttpResponse.json({\n name: 'company',\n email: 'test@test.com',\n address: { state: 'OSLO', line1: 'Blindern', country: 'NO', city: 'OSLO', postal_code: '0123' },\n shipping: { address: { state: 'OSLO', line1: 'Blindern', country: 'NO', city: 'OSLO', postal_code: '0123' } }\n })\n ),\n http.post(\n `${tenantadmApiUrlv2}/billing/card`,\n validated(() => HttpResponse.json({ intent_id: mockApiResponses.organization.intentId, secret: 'testSecret' }))\n ),\n http.post(\n `${tenantadmApiUrlv2}/billing/card/:intentId/confirm`,\n validated(({ params: { intentId } }) => new HttpResponse(null, { status: intentId == mockApiResponses.organization.intentId ? 200 : 540 }))\n ),\n http.post(`${tenantadmApiUrlv2}/tenants/:tenantId/upgrade/:status`, async ({ params: { status, tenantId }, request }) => {\n if (tenantId != mockApiResponses.organization.organization.id || !['cancel', 'complete', 'start'].includes(status)) {\n return new HttpResponse(null, { status: 541 });\n }\n if (status === 'start') {\n return HttpResponse.json({ secret: 'testSecret' });\n }\n let plan;\n try {\n const body = await request.json();\n plan = body.plan;\n } catch {\n // no completion;\n }\n if (plan && !Object.keys(PLANS).includes(plan)) {\n return new HttpResponse(null, { status: 542 });\n }\n return new HttpResponse(null, { status: 200 });\n }),\n http.post(\n `${tenantadmApiUrlv2}/tenants/:tenantId/plan`,\n validated(async ({ params: { tenantId }, request }) => {\n const body = await request.json();\n const expectedKeys = ['current_plan', 'requested_plan', 'current_addons', 'requested_addons', 'user_message'];\n if (tenantId != mockApiResponses.organization.organization.id || !Object.keys(body).every(key => expectedKeys.includes(key))) {\n return new HttpResponse(null, { status: 544 });\n }\n if (body.requested_plan && !Object.values(PLANS).some(item => item.name === body.requested_plan)) {\n return new HttpResponse(null, { status: 545 });\n }\n return new HttpResponse(null, { status: 200 });\n })\n ),\n http.post(\n `${tenantadmApiUrlv2}/contact/support`,\n validated(async ({ request }) => {\n const { subject, body } = await request.json();\n if (!(subject && body)) {\n return new HttpResponse(null, { status: 543 });\n }\n return new HttpResponse(null, { status: 200 });\n })\n ),\n http.patch(\n `${tenantadmApiUrlv2}/billing/profile`,\n validated(() => new HttpResponse(null, { status: 200 }))\n ),\n http.post(\n `${tenantadmApiUrlv2}/billing/profile`,\n validated(() => new HttpResponse(null, { status: 200 }))\n ),\n http.post(\n `${tenantadmApiUrlv2}/billing/subscription`,\n validated(() => new HttpResponse(null, { status: 202 }))\n ),\n http.post(`${tenantadmApiUrlv2}/billing/subscription/invoices/preview`, () => HttpResponse.json(invoicePreviewBasic)),\n http.get(`${tenantadmApiUrlv2}/billing/subscription`, () => HttpResponse.json(subscriptionBasic)),\n http.get(`${tenantadmApiUrlv2}/billing/products`, () => HttpResponse.json(mockApiResponses.organization.products)),\n http.get(`${auditLogsApiUrl}/logs`, ({ request }) => {\n const { searchParams } = new URL(request.url);\n const perPage = Number(searchParams.get('per_page'));\n if (perPage === 500) {\n return HttpResponse.json([\n { meta: mockApiResponses.organization.auditlog.events[2].meta, time: mockApiResponses.organization.auditlog.events[1].time, action: 'close_terminal' }\n ]);\n }\n return new HttpResponse(JSON.stringify(mockApiResponses.organization.auditlog.events), {\n headers: { [headerNames.total]: mockApiResponses.organization.auditlog.events.length }\n });\n }),\n http.get(`${auditLogsApiUrl}/logs/export`, () =>\n HttpResponse.text(`action,actor.id,actor.type,actor.email,actor.identity_data,object.id,object.type,object.user.email,object.deployment.name,object.deployment.artifact_name,change\n update,5c56c2ed-2a9a-5de9-bb86-cf38b3d4a5e1,user,test@example.coim,,067f23a9-76a5-5585-b119-32402a120978,user,test@example.com,,,\"Update user 067f23a9-76a5-5585-b119-32402a120978 (test@example.com).\n Diff:\n --- Original\n +++ Current\n @@ -9 +9,2 @@\n - \"\"RBAC_ROLE_OBSERVER\"\"\n + \"\"RBAC_ROLE_OBSERVER\"\",\n + \"\"RBAC_ROLE_PERMIT_ALL\"\"\n \"\n `)\n ),\n http.get(`${iotManagerBaseURL}/integrations`, () =>\n HttpResponse.json([\n { connection_string: 'something_else', id: 1, provider: 'iot-hub' },\n { id: 2, provider: 'iot-core', something: 'new' }\n ])\n ),\n http.post(\n `${iotManagerBaseURL}/integrations`,\n validated(() => HttpResponse.json([{ connection_string: 'something_else', provider: 'iot-hub' }]))\n ),\n http.put(\n `${iotManagerBaseURL}/integrations/:integrationId`,\n validated(({ params: { integrationId } }) => {\n if (!integrationId) {\n return new HttpResponse(null, { status: 547 });\n }\n return new HttpResponse(null, { status: 200 });\n })\n ),\n http.put(\n `${iotManagerBaseURL}/integrations/:integrationId/credentials`,\n validated(({ params: { integrationId } }) => {\n if (!integrationId) {\n return new HttpResponse(null, { status: 548 });\n }\n return new HttpResponse(null, { status: 200 });\n })\n ),\n http.delete(`${iotManagerBaseURL}/integrations/:integrationId`, ({ params: { integrationId } }) => {\n if (!integrationId) {\n return new HttpResponse(null, { status: 549 });\n }\n return new HttpResponse(null, { status: 200 });\n }),\n http.get(`${iotManagerBaseURL}/events`, ({ request }) => {\n const { searchParams } = new URL(request.url);\n const page = Number(searchParams.get('page'));\n const perPage = Number(searchParams.get('per_page'));\n return HttpResponse.json(webhookEvents.slice((page - 1) * perPage, page * perPage), { headers: { [headerNames.total]: `${webhookEvents.length}` } });\n }),\n http.get(ssoIdpApiUrlv1, () =>\n HttpResponse.json([\n { id: '1', issuer: 'https://samltest.id/saml/idp', valid_until: '2038-08-24T21:14:09Z' },\n { id: '2', issuer: 'https://samltest2.id/saml/idp', valid_until: '2030-10-24T21:14:09Z' }\n ])\n ),\n http.post(\n ssoIdpApiUrlv1,\n validated(() => new HttpResponse(null, { status: 200 }))\n ),\n http.get(`${ssoIdpApiUrlv1}/:configId`, ({ params: { configId } }) => {\n if (!configId) {\n return new HttpResponse(null, { status: 550 });\n }\n return HttpResponse.json({ email: 'user@acme.com', password: 'mypass1234', login: { google: 'bob@gmail.com' }, config: '<div>not quite right</div>' });\n }),\n http.put(\n `${ssoIdpApiUrlv1}/:configId`,\n validated(({ params: { configId } }) => new HttpResponse(null, { status: configId ? 200 : 551 }))\n ),\n http.delete(`${ssoIdpApiUrlv1}/:configId`, ({ params: { configId } }) => new HttpResponse(null, { status: configId ? 200 : 552 })),\n http.get(ssoEndpointsApiUrlv1, () => HttpResponse.json(ssoEndpoint))\n];\n"],"mappings":"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"}
|
|
@@ -1,244 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_mockData = require("../mockData.cjs");
|
|
3
|
-
const require_validation = require("../validation-DAMYMdv9.cjs");
|
|
4
|
-
let _northern_tech_utils_constants = require("@northern.tech/utils/constants");
|
|
5
|
-
let _northern_tech_utils_helpers = require("@northern.tech/utils/helpers");
|
|
6
|
-
let msw = require("msw");
|
|
7
|
-
//#region src/requestHandlers/releaseHandlers.ts
|
|
8
|
-
const deltaJobs = {
|
|
9
|
-
"delta-job-1": {
|
|
10
|
-
id: "delta-job-1",
|
|
11
|
-
to_release: "mender-demo-artifact-3.3.1",
|
|
12
|
-
from_release: "mender-demo-artifact-3.2.1",
|
|
13
|
-
to_version: "mender-demo-artifact-3.3.1",
|
|
14
|
-
from_version: "mender-demo-artifact-3.2.1",
|
|
15
|
-
device_types_compatible: ["qemux86-64"],
|
|
16
|
-
started: "2022-07-11T20:49:00.000Z",
|
|
17
|
-
status: "success"
|
|
18
|
-
},
|
|
19
|
-
"delta-job-2": {
|
|
20
|
-
id: "delta-job-2",
|
|
21
|
-
to_release: "mender-demo-artifact-3.3.1",
|
|
22
|
-
from_release: "mender-demo-artifact-3.3.0",
|
|
23
|
-
to_version: "mender-demo-artifact-3.3.1",
|
|
24
|
-
from_version: "mender-demo-artifact-3.3.0",
|
|
25
|
-
device_types_compatible: [
|
|
26
|
-
"raspberrypi0w",
|
|
27
|
-
"raspberrypi0-wifi",
|
|
28
|
-
"raspberrypi3",
|
|
29
|
-
"raspberrypi4"
|
|
30
|
-
],
|
|
31
|
-
started: "2022-07-11T20:49:00.000Z",
|
|
32
|
-
status: "failed"
|
|
33
|
-
},
|
|
34
|
-
"delta-job-3": {
|
|
35
|
-
id: "delta-job-3",
|
|
36
|
-
to_release: "mender-demo-artifact-3.3.1",
|
|
37
|
-
from_release: "mender-demo-artifact-3.3.0",
|
|
38
|
-
to_version: "mender-demo-artifact-3.3.1",
|
|
39
|
-
from_version: "mender-demo-artifact-3.3.0",
|
|
40
|
-
device_types_compatible: [
|
|
41
|
-
"beaglebone",
|
|
42
|
-
"beaglebone-yocto",
|
|
43
|
-
"beaglebone-yocto"
|
|
44
|
-
],
|
|
45
|
-
started: "2022-07-11T20:49:00.000Z",
|
|
46
|
-
status: "pending"
|
|
47
|
-
},
|
|
48
|
-
"delta-job-4": {
|
|
49
|
-
id: "delta-job-4",
|
|
50
|
-
to_release: "mender-demo-artifact-3.2.0",
|
|
51
|
-
from_release: "mender-demo-artifact-3.1.0",
|
|
52
|
-
to_version: "mender-demo-artifact-3.2.0",
|
|
53
|
-
from_version: "mender-demo-artifact-3.1.0",
|
|
54
|
-
device_types_compatible: ["qemux86-64"],
|
|
55
|
-
started: "2022-07-10T15:30:00.000Z",
|
|
56
|
-
status: "artifact_uploaded"
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
const mockDeltaJobDetails = {
|
|
60
|
-
"delta-job-1": {
|
|
61
|
-
...deltaJobs["delta-job-1"],
|
|
62
|
-
delta_artifact_size: 1024e3,
|
|
63
|
-
deployment_id: "d1",
|
|
64
|
-
devices_types_compatible: ["qemux86-64"],
|
|
65
|
-
exit_code: 0,
|
|
66
|
-
log: "Delta generation started at 2022-07-11T20:49:00.000Z\nProcessing artifacts...\nDelta generation completed successfully at 2022-07-11T20:52:15.000Z",
|
|
67
|
-
to_artifact_size: 2048e3
|
|
68
|
-
},
|
|
69
|
-
"delta-job-2": {
|
|
70
|
-
...deltaJobs["delta-job-2"],
|
|
71
|
-
delta_artifact_size: null,
|
|
72
|
-
deployment_id: "d2",
|
|
73
|
-
devices_types_compatible: [
|
|
74
|
-
"raspberrypi0w",
|
|
75
|
-
"raspberrypi0-wifi",
|
|
76
|
-
"raspberrypi3",
|
|
77
|
-
"raspberrypi4"
|
|
78
|
-
],
|
|
79
|
-
exit_code: 1,
|
|
80
|
-
log: "Delta generation started at 2022-07-11T20:49:00.000Z\nError: incompatible artifact types\nDelta generation failed at 2022-07-11T20:51:30.000Z",
|
|
81
|
-
to_artifact_size: 3072e3
|
|
82
|
-
},
|
|
83
|
-
"delta-job-3": {
|
|
84
|
-
...deltaJobs["delta-job-3"],
|
|
85
|
-
delta_artifact_size: null,
|
|
86
|
-
deployment_id: "d3",
|
|
87
|
-
devices_types_compatible: ["beaglebone", "beaglebone-yocto"],
|
|
88
|
-
exit_code: null,
|
|
89
|
-
log: "Delta generation started at 2022-07-11T20:49:00.000Z\nQueued for processing...",
|
|
90
|
-
to_artifact_size: 256e4
|
|
91
|
-
},
|
|
92
|
-
"delta-job-4": {
|
|
93
|
-
...deltaJobs["delta-job-4"],
|
|
94
|
-
delta_artifact_size: 512e3,
|
|
95
|
-
deployment_id: "d1",
|
|
96
|
-
devices_types_compatible: ["qemux86-64"],
|
|
97
|
-
exit_code: 0,
|
|
98
|
-
log: "Delta generation started at 2022-07-10T15:30:00.000Z\nProcessing artifacts...\nArtifact uploaded successfully at 2022-07-10T15:45:20.000Z",
|
|
99
|
-
to_artifact_size: 1536e3
|
|
100
|
-
}
|
|
101
|
-
};
|
|
102
|
-
const releaseHandlers = [
|
|
103
|
-
msw.http.get(`${_northern_tech_utils_constants.deploymentsApiUrl}/artifacts/:id`, () => new msw.HttpResponse(null, { status: 200 })),
|
|
104
|
-
msw.http.get(`${_northern_tech_utils_constants.deploymentsApiUrl}/artifacts/:id/download`, () => msw.HttpResponse.json({ uri: "https://testlocation.com/artifact.mender" })),
|
|
105
|
-
msw.http.delete(`${_northern_tech_utils_constants.deploymentsApiUrl}/artifacts/:id`, ({ params: { id } }) => new msw.HttpResponse(null, { status: id === require_mockData.mockApiResponses.releases.byId.r1.artifacts[0].id ? 200 : 591 })),
|
|
106
|
-
msw.http.put(`${_northern_tech_utils_constants.deploymentsApiUrl}/artifacts/:id`, require_validation.validated(async ({ params: { id }, request }) => {
|
|
107
|
-
const { description } = await request.json();
|
|
108
|
-
return new msw.HttpResponse(null, { status: id === require_mockData.mockApiResponses.releases.byId.r1.artifacts[0].id && description ? 200 : 592 });
|
|
109
|
-
})),
|
|
110
|
-
msw.http.post(`${_northern_tech_utils_constants.deploymentsApiUrl}/artifacts/generate`, () => new msw.HttpResponse(null, { headers: {
|
|
111
|
-
[_northern_tech_utils_constants.headerNames.location]: `${_northern_tech_utils_constants.deploymentsApiUrl}/artifacts/generate/${require_mockData.mockApiResponses.releases.byId.r1.artifacts[0].id}`,
|
|
112
|
-
status: 201
|
|
113
|
-
} })),
|
|
114
|
-
msw.http.post(`${_northern_tech_utils_constants.deploymentsApiUrl}/artifacts`, () => new msw.HttpResponse(null, { status: 200 })),
|
|
115
|
-
msw.http.get(`${_northern_tech_utils_constants.deploymentsApiUrlV2}/deployments/releases`, async ({ request }) => {
|
|
116
|
-
const { searchParams } = new URL(request.url);
|
|
117
|
-
const page = Number(searchParams.get("page"));
|
|
118
|
-
const perPage = Number(searchParams.get("per_page"));
|
|
119
|
-
if (!page || ![
|
|
120
|
-
1,
|
|
121
|
-
10,
|
|
122
|
-
20,
|
|
123
|
-
50,
|
|
124
|
-
100,
|
|
125
|
-
250,
|
|
126
|
-
500
|
|
127
|
-
].includes(perPage)) return new msw.HttpResponse(null, { status: 593 });
|
|
128
|
-
if (searchParams.get("device_type")) return msw.HttpResponse.json([]);
|
|
129
|
-
if (page == 42) return new msw.HttpResponse(JSON.stringify([require_mockData.mockApiResponses.releases.byId.r1]), { headers: { [_northern_tech_utils_constants.headerNames.total]: 1 } });
|
|
130
|
-
const sort = searchParams.get("sort");
|
|
131
|
-
const releaseListSection = require_mockData.releasesList.sort((0, _northern_tech_utils_helpers.customSort)(sort.includes(_northern_tech_utils_constants.SORTING_OPTIONS.desc), "name")).slice((page - 1) * perPage, page * perPage);
|
|
132
|
-
if (page === 1 && perPage === 1 && searchParams.get("name")) return msw.HttpResponse.json([require_mockData.mockApiResponses.releases.byId.r1]);
|
|
133
|
-
if (searchParams.get("name")) return new msw.HttpResponse(JSON.stringify(releaseListSection), { headers: { [_northern_tech_utils_constants.headerNames.total]: 1234 } });
|
|
134
|
-
return new msw.HttpResponse(JSON.stringify(releaseListSection), { headers: { [_northern_tech_utils_constants.headerNames.total]: require_mockData.releasesList.length } });
|
|
135
|
-
}),
|
|
136
|
-
msw.http.get(`${_northern_tech_utils_constants.deploymentsApiUrlV2}/deployments/releases/:name`, () => msw.HttpResponse.json(require_mockData.mockApiResponses.releases.byId.r1)),
|
|
137
|
-
msw.http.get(`${_northern_tech_utils_constants.deploymentsApiUrlV2}/releases/all/types`, () => msw.HttpResponse.json(["single-file", "not-this"])),
|
|
138
|
-
msw.http.put(`${_northern_tech_utils_constants.deploymentsApiUrlV2}/deployments/releases/:name/tags`, require_validation.validated(async ({ params: { name }, request }) => {
|
|
139
|
-
const tags = await request.json();
|
|
140
|
-
if (name && tags.every((i) => i && i.toString() === i)) return new msw.HttpResponse(null, { status: 200 });
|
|
141
|
-
return new msw.HttpResponse(null, { status: 593 });
|
|
142
|
-
})),
|
|
143
|
-
msw.http.patch(`${_northern_tech_utils_constants.deploymentsApiUrlV2}/deployments/releases/:name`, require_validation.validated(async ({ params: { name }, request }) => {
|
|
144
|
-
const { notes } = await request.json();
|
|
145
|
-
return new msw.HttpResponse(null, { status: name && notes.length ? 200 : 594 });
|
|
146
|
-
})),
|
|
147
|
-
msw.http.get(`${_northern_tech_utils_constants.deploymentsApiUrlV2}/deployments/releases/delta/jobs`, () => {
|
|
148
|
-
const jobs = Object.values(deltaJobs);
|
|
149
|
-
return new msw.HttpResponse(JSON.stringify(jobs), { headers: { [_northern_tech_utils_constants.headerNames.total]: jobs.length } });
|
|
150
|
-
}),
|
|
151
|
-
msw.http.get(`${_northern_tech_utils_constants.deploymentsApiUrlV2}/deployments/releases/delta/jobs/:jobId`, ({ params: { jobId } }) => {
|
|
152
|
-
const jobDetails = mockDeltaJobDetails[jobId];
|
|
153
|
-
if (jobDetails) return msw.HttpResponse.json(jobDetails);
|
|
154
|
-
return new msw.HttpResponse(null, { status: 404 });
|
|
155
|
-
}),
|
|
156
|
-
msw.http.get(`${_northern_tech_utils_constants.deploymentsApiUrl}/manifests`, require_validation.validated(async ({ request }) => {
|
|
157
|
-
const { searchParams } = new URL(request.url);
|
|
158
|
-
const page = Number(searchParams.get("page"));
|
|
159
|
-
const perPage = Number(searchParams.get("per_page"));
|
|
160
|
-
if (!page || ![
|
|
161
|
-
1,
|
|
162
|
-
10,
|
|
163
|
-
20,
|
|
164
|
-
50,
|
|
165
|
-
100,
|
|
166
|
-
250,
|
|
167
|
-
500
|
|
168
|
-
].includes(perPage)) return new msw.HttpResponse(null, { status: 593 });
|
|
169
|
-
if (page == 42) return new msw.HttpResponse(JSON.stringify([require_mockData.mockApiResponses.manifests.byId.m1]), { headers: { [_northern_tech_utils_constants.headerNames.total]: 1 } });
|
|
170
|
-
const sort = searchParams.get("sort");
|
|
171
|
-
const manifestListSection = require_mockData.manifestsList.sort((0, _northern_tech_utils_helpers.customSort)(sort.includes(_northern_tech_utils_constants.SORTING_OPTIONS.desc), "modified")).slice((page - 1) * perPage, page * perPage);
|
|
172
|
-
if (page === 1 && perPage === 1 && searchParams.get("name")) return msw.HttpResponse.json([require_mockData.mockApiResponses.manifests.byId.m1]);
|
|
173
|
-
const tags = searchParams.getAll("tag");
|
|
174
|
-
if (searchParams.get("name") || tags.length) return new msw.HttpResponse(JSON.stringify(manifestListSection), { headers: { [_northern_tech_utils_constants.headerNames.total]: 1234 } });
|
|
175
|
-
return new msw.HttpResponse(JSON.stringify(manifestListSection), { headers: { [_northern_tech_utils_constants.headerNames.total]: require_mockData.manifestsList.length } });
|
|
176
|
-
})),
|
|
177
|
-
msw.http.delete(`${_northern_tech_utils_constants.deploymentsApiUrl}/manifests`, require_validation.validated(({ request: { url } }) => {
|
|
178
|
-
const { searchParams } = new URL(url);
|
|
179
|
-
if (!searchParams.getAll("name").length) return new msw.HttpResponse(null, { status: 400 });
|
|
180
|
-
return new msw.HttpResponse(null, { status: 204 });
|
|
181
|
-
})),
|
|
182
|
-
msw.http.post(`${_northern_tech_utils_constants.deploymentsApiUrl}/manifests`, () => new msw.HttpResponse(null, {
|
|
183
|
-
status: 201,
|
|
184
|
-
headers: { [_northern_tech_utils_constants.headerNames.location]: `${_northern_tech_utils_constants.deploymentsApiUrl}/manifests/m1000` }
|
|
185
|
-
})),
|
|
186
|
-
msw.http.post(`${_northern_tech_utils_constants.deploymentsApiUrl}/manifests/generate`, () => new msw.HttpResponse(null, {
|
|
187
|
-
status: 202,
|
|
188
|
-
headers: { [_northern_tech_utils_constants.headerNames.location]: `${_northern_tech_utils_constants.deploymentsApiUrl}/manifests/m1000` }
|
|
189
|
-
})),
|
|
190
|
-
msw.http.get(`${_northern_tech_utils_constants.deploymentsApiUrl}/manifests/:name`, require_validation.validated(({ params: { name } }) => {
|
|
191
|
-
if (name === require_mockData.mockApiResponses.manifests.byId.m1000.name) return msw.HttpResponse.json(require_mockData.mockApiResponses.manifests.byId.m1000);
|
|
192
|
-
return new msw.HttpResponse(null, { status: 404 });
|
|
193
|
-
})),
|
|
194
|
-
msw.http.patch(`${_northern_tech_utils_constants.deploymentsApiUrl}/manifests/:name`, require_validation.validated(async ({ params: { name }, request }) => {
|
|
195
|
-
const body = await request.json();
|
|
196
|
-
if (name && (body.notes !== void 0 || body.tags !== void 0)) return new msw.HttpResponse(null, { status: 204 });
|
|
197
|
-
return new msw.HttpResponse(null, { status: 400 });
|
|
198
|
-
})),
|
|
199
|
-
msw.http.get(`${_northern_tech_utils_constants.deploymentsApiUrl}/software`, require_validation.validated(async ({ request }) => {
|
|
200
|
-
const { searchParams } = new URL(request.url);
|
|
201
|
-
const page = Number(searchParams.get("page"));
|
|
202
|
-
const perPage = Number(searchParams.get("per_page"));
|
|
203
|
-
if (!page || ![
|
|
204
|
-
1,
|
|
205
|
-
10,
|
|
206
|
-
20,
|
|
207
|
-
50,
|
|
208
|
-
100,
|
|
209
|
-
250,
|
|
210
|
-
500
|
|
211
|
-
].includes(perPage)) return new msw.HttpResponse(null, { status: 593 });
|
|
212
|
-
const sort = searchParams.get("sort");
|
|
213
|
-
let filtered = [...require_mockData.softwareList];
|
|
214
|
-
const kind = searchParams.get("kind");
|
|
215
|
-
if (kind) filtered = filtered.filter((item) => item.kind === kind);
|
|
216
|
-
const names = searchParams.getAll("name");
|
|
217
|
-
if (names.length) filtered = filtered.filter((item) => names.some((name) => item.name.includes(name)));
|
|
218
|
-
const namePrefix = searchParams.get("name_prefix");
|
|
219
|
-
if (namePrefix) filtered = filtered.filter((item) => item.name.startsWith(namePrefix));
|
|
220
|
-
const tags = searchParams.getAll("tag");
|
|
221
|
-
if (tags.length) filtered = filtered.filter((item) => tags.some((tag) => item.tags?.includes(tag)));
|
|
222
|
-
const updateType = searchParams.get("update_type");
|
|
223
|
-
if (updateType) filtered = filtered.filter((item) => item.update_type === updateType);
|
|
224
|
-
filtered.sort((0, _northern_tech_utils_helpers.customSort)(sort?.includes(_northern_tech_utils_constants.SORTING_OPTIONS.desc) ?? false, sort?.includes("name") ? "name" : "modified"));
|
|
225
|
-
const section = filtered.slice((page - 1) * perPage, page * perPage);
|
|
226
|
-
return new msw.HttpResponse(JSON.stringify(section), { headers: { [_northern_tech_utils_constants.headerNames.total]: filtered.length } });
|
|
227
|
-
})),
|
|
228
|
-
msw.http.get(`${_northern_tech_utils_constants.deploymentsApiUrl}/software/tags`, require_validation.validated(({ request: { url } }) => {
|
|
229
|
-
const { searchParams } = new URL(url);
|
|
230
|
-
const kind = searchParams.get("kind");
|
|
231
|
-
if (kind === "manifest") return msw.HttpResponse.json(["manifest-tag-1", "manifest-tag-2"]);
|
|
232
|
-
if (kind === "release") return msw.HttpResponse.json(["foo", "bar"]);
|
|
233
|
-
return msw.HttpResponse.json([
|
|
234
|
-
"foo",
|
|
235
|
-
"bar",
|
|
236
|
-
"manifest-tag-1",
|
|
237
|
-
"manifest-tag-2"
|
|
238
|
-
]);
|
|
239
|
-
}))
|
|
240
|
-
];
|
|
241
|
-
//#endregion
|
|
242
|
-
exports.releaseHandlers = releaseHandlers;
|
|
243
|
-
|
|
244
|
-
//# sourceMappingURL=releaseHandlers.cjs.map
|