@oneuptime/common 9.2.20 → 9.2.22
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/Server/Services/AIService.ts +1 -1
- package/Tests/Server/API/BaseAPI.test.ts +9 -4
- package/Tests/Server/Middleware/ProjectAuthorization.test.ts +133 -162
- package/Tests/Server/Services/ProbeService.test.ts +91 -784
- package/Tests/Server/Services/ScheduledMaintenanceService.test.ts +131 -112
- package/Tests/Server/Services/TeamMemberService.test.ts +87 -1343
- package/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.ts +18 -9
- package/Tests/Server/Utils/Cookie.test.ts +10 -2
- package/Tests/Types/HashedString.test.ts +52 -8
- package/Tests/UI/Components/404.test.tsx +10 -15
- package/Tests/UI/Components/Breadcrumbs.test.tsx +6 -2
- package/Tests/UI/Components/Button.test.tsx +12 -12
- package/Tests/UI/Components/Card.test.tsx +4 -2
- package/Tests/UI/Components/ConfirmModal.test.tsx +1 -1
- package/Tests/UI/Components/Dropdown.test.tsx +37 -4
- package/Tests/UI/Components/DuplicateModel.test.tsx +49 -45
- package/Tests/UI/Components/FilePicker.test.tsx +258 -178
- package/Tests/UI/Components/List.test.tsx +3 -1
- package/Tests/UI/Components/MarkdownEditor.test.tsx +6 -5
- package/Tests/UI/Components/MasterPage.test.tsx +1 -1
- package/Tests/UI/Components/Modal.test.tsx +5 -5
- package/Tests/UI/Components/NavBar.test.tsx +14 -1
- package/Tests/UI/Components/OrderedStatesList.test.tsx +1 -1
- package/Tests/UI/Components/Pagination.test.tsx +6 -2
- package/Tests/Utils/API.test.ts +133 -11
- package/Tests/__mocks__/azure.js +2 -0
- package/Tests/__mocks__/botbuilder-stdlib.js +2 -0
- package/Tests/__mocks__/botbuilder.js +10 -0
- package/Tests/__mocks__/locter.js +5 -0
- package/Tests/__mocks__/otpauth.js +30 -0
- package/Tests/__mocks__/simplewebauthn.js +34 -0
- package/Tests/__mocks__/styleMock.js +1 -0
- package/Tests/__mocks__/uuid.js +31 -0
- package/Tests/__mocks__/yaml.js +11 -0
- package/Tests/jest.setup.ts +14 -0
- package/UI/Components/AI/AITemplates.ts +226 -0
- package/UI/Components/AI/GenerateFromAIModal.tsx +21 -270
- package/build/dist/Server/Services/AIService.js +1 -1
- package/build/dist/Server/Services/AIService.js.map +1 -1
- package/build/dist/Tests/Server/API/BaseAPI.test.js +7 -2
- package/build/dist/Tests/Server/API/BaseAPI.test.js.map +1 -1
- package/build/dist/Tests/Server/Middleware/ProjectAuthorization.test.js +89 -101
- package/build/dist/Tests/Server/Middleware/ProjectAuthorization.test.js.map +1 -1
- package/build/dist/Tests/Server/Services/ProbeService.test.js +95 -687
- package/build/dist/Tests/Server/Services/ProbeService.test.js.map +1 -1
- package/build/dist/Tests/Server/Services/ScheduledMaintenanceService.test.js +108 -89
- package/build/dist/Tests/Server/Services/ScheduledMaintenanceService.test.js.map +1 -1
- package/build/dist/Tests/Server/Services/TeamMemberService.test.js +85 -924
- package/build/dist/Tests/Server/Services/TeamMemberService.test.js.map +1 -1
- package/build/dist/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.js +14 -9
- package/build/dist/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.js.map +1 -1
- package/build/dist/Tests/Server/Utils/Cookie.test.js +10 -4
- package/build/dist/Tests/Server/Utils/Cookie.test.js.map +1 -1
- package/build/dist/Tests/Types/HashedString.test.js +39 -6
- package/build/dist/Tests/Types/HashedString.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/404.test.js +10 -10
- package/build/dist/Tests/UI/Components/404.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/Breadcrumbs.test.js +6 -2
- package/build/dist/Tests/UI/Components/Breadcrumbs.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/Button.test.js +12 -12
- package/build/dist/Tests/UI/Components/Card.test.js +4 -2
- package/build/dist/Tests/UI/Components/Card.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/ConfirmModal.test.js +1 -1
- package/build/dist/Tests/UI/Components/ConfirmModal.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/Dropdown.test.js +19 -3
- package/build/dist/Tests/UI/Components/Dropdown.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/DuplicateModel.test.js +46 -41
- package/build/dist/Tests/UI/Components/DuplicateModel.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/FilePicker.test.js +210 -117
- package/build/dist/Tests/UI/Components/FilePicker.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/List.test.js +3 -1
- package/build/dist/Tests/UI/Components/List.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/MarkdownEditor.test.js +6 -5
- package/build/dist/Tests/UI/Components/MarkdownEditor.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/MasterPage.test.js +1 -1
- package/build/dist/Tests/UI/Components/MasterPage.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/Modal.test.js +5 -5
- package/build/dist/Tests/UI/Components/Modal.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/NavBar.test.js +13 -1
- package/build/dist/Tests/UI/Components/NavBar.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/OrderedStatesList.test.js +1 -1
- package/build/dist/Tests/UI/Components/OrderedStatesList.test.js.map +1 -1
- package/build/dist/Tests/UI/Components/Pagination.test.js +6 -2
- package/build/dist/Tests/UI/Components/Pagination.test.js.map +1 -1
- package/build/dist/Tests/Utils/API.test.js +100 -9
- package/build/dist/Tests/Utils/API.test.js.map +1 -1
- package/build/dist/Tests/jest.setup.js +13 -0
- package/build/dist/Tests/jest.setup.js.map +1 -0
- package/build/dist/UI/Components/AI/AITemplates.js +218 -0
- package/build/dist/UI/Components/AI/AITemplates.js.map +1 -0
- package/build/dist/UI/Components/AI/GenerateFromAIModal.js +5 -238
- package/build/dist/UI/Components/AI/GenerateFromAIModal.js.map +1 -1
- package/jest.config.json +18 -1
- package/package.json +1 -1
|
@@ -1,838 +1,145 @@
|
|
|
1
|
-
import "
|
|
2
|
-
import UserTestService from "../TestingUtils/Services/UserServiceHelper";
|
|
1
|
+
import Probe from "../../../Models/DatabaseModels/Probe";
|
|
3
2
|
import ObjectID from "../../../Types/ObjectID";
|
|
4
|
-
import PositiveNumber from "../../../Types/PositiveNumber";
|
|
5
3
|
import Version from "../../../Types/Version";
|
|
6
4
|
import Faker from "../../../Utils/Faker";
|
|
7
|
-
import
|
|
8
|
-
import User from "../../../Models/DatabaseModels/User";
|
|
9
|
-
import { fail } from "assert";
|
|
10
|
-
import { describe, expect, beforeEach, afterEach, test } from "@jest/globals";
|
|
11
|
-
import { TestDatabaseMock } from "../TestingUtils/__mocks__/TestDatabase.mock";
|
|
12
|
-
import UserService from "../../../Server/Services/UserService";
|
|
13
|
-
import ProbeService from "../../../Server/Services/ProbeService";
|
|
14
|
-
|
|
15
|
-
describe("ProbeService", () => {
|
|
16
|
-
beforeEach(async () => {
|
|
17
|
-
// mock PostgresDatabase
|
|
18
|
-
await TestDatabaseMock.connectDbMock();
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
afterEach(async () => {
|
|
22
|
-
await TestDatabaseMock.disconnectDbMock();
|
|
23
|
-
jest.resetAllMocks();
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
test("create a new probe", async () => {
|
|
27
|
-
const name: string = Faker.generateName();
|
|
28
|
-
const probeVersion: Version = new Version("1.0.1");
|
|
29
|
-
const key: ObjectID = ObjectID.generate();
|
|
30
|
-
|
|
31
|
-
const probe: Probe = new Probe();
|
|
32
|
-
probe.name = name;
|
|
33
|
-
probe.probeVersion = probeVersion;
|
|
34
|
-
probe.key = key.toString();
|
|
35
|
-
probe.description = "test description";
|
|
36
|
-
|
|
37
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
38
|
-
data: probe,
|
|
39
|
-
props: {
|
|
40
|
-
isRoot: true,
|
|
41
|
-
},
|
|
42
|
-
});
|
|
43
|
-
|
|
44
|
-
expect(savedProbe.name).toEqual(name);
|
|
45
|
-
expect(savedProbe.probeVersion?.toString()).toEqual(
|
|
46
|
-
probeVersion?.toString(),
|
|
47
|
-
);
|
|
48
|
-
expect(savedProbe.createdAt).toBeTruthy();
|
|
49
|
-
expect(savedProbe.version).toBeTruthy();
|
|
50
|
-
expect(savedProbe._id).toBeTruthy();
|
|
51
|
-
expect(savedProbe.key?.toString()).toEqual(key?.toString());
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
test("findOneBy probe by name", async () => {
|
|
55
|
-
const name: string = Faker.generateName();
|
|
56
|
-
const probeVersion: Version = new Version("1.0.1");
|
|
57
|
-
const key: ObjectID = ObjectID.generate();
|
|
58
|
-
const probe: Probe = new Probe();
|
|
59
|
-
probe.name = name;
|
|
60
|
-
probe.probeVersion = probeVersion;
|
|
61
|
-
probe.key = key.toString();
|
|
62
|
-
probe.description = "test description";
|
|
63
|
-
|
|
64
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
65
|
-
data: probe,
|
|
66
|
-
props: {
|
|
67
|
-
isRoot: true,
|
|
68
|
-
},
|
|
69
|
-
});
|
|
70
|
-
|
|
71
|
-
if (!savedProbe.name) {
|
|
72
|
-
fail("savedprobe name is null");
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
const fetchedProbe: Probe | null = await ProbeService.findOneBy({
|
|
76
|
-
query: {
|
|
77
|
-
name: savedProbe.name,
|
|
78
|
-
},
|
|
79
|
-
select: {
|
|
80
|
-
_id: true,
|
|
81
|
-
name: true,
|
|
82
|
-
version: true,
|
|
83
|
-
probeVersion: true,
|
|
84
|
-
createdAt: true,
|
|
85
|
-
key: true,
|
|
86
|
-
},
|
|
87
|
-
props: { isRoot: true },
|
|
88
|
-
});
|
|
89
|
-
|
|
90
|
-
if (!fetchedProbe) {
|
|
91
|
-
// fail the test.
|
|
92
|
-
fail("Probe not found in the database");
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
expect(fetchedProbe.name).toEqual(name);
|
|
96
|
-
expect(fetchedProbe._id).toEqual(savedProbe._id);
|
|
97
|
-
expect(fetchedProbe.probeVersion?.toString()).toEqual(
|
|
98
|
-
probeVersion?.toString(),
|
|
99
|
-
);
|
|
100
|
-
expect(fetchedProbe.createdAt).toBeTruthy();
|
|
101
|
-
expect(fetchedProbe.version).toBeTruthy();
|
|
102
|
-
expect(fetchedProbe._id).toBeTruthy();
|
|
103
|
-
expect(fetchedProbe.key?.toString()).toEqual(key?.toString());
|
|
104
|
-
});
|
|
105
|
-
|
|
106
|
-
test("findOneBy by probeVersion", async () => {
|
|
107
|
-
const name: string = Faker.generateName();
|
|
108
|
-
const probeVersion: Version = new Version("1.0.2");
|
|
109
|
-
const key: ObjectID = ObjectID.generate();
|
|
110
|
-
const probe: Probe = new Probe();
|
|
111
|
-
probe.name = name;
|
|
112
|
-
probe.probeVersion = probeVersion;
|
|
113
|
-
probe.key = key.toString();
|
|
114
|
-
probe.description = "test description";
|
|
115
|
-
|
|
116
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
117
|
-
data: probe,
|
|
118
|
-
props: {
|
|
119
|
-
isRoot: true,
|
|
120
|
-
},
|
|
121
|
-
});
|
|
122
|
-
|
|
123
|
-
const fetchedProbe: Probe | null = await ProbeService.findOneBy({
|
|
124
|
-
query: {
|
|
125
|
-
probeVersion: new Version("1.0.2"),
|
|
126
|
-
},
|
|
127
|
-
select: {
|
|
128
|
-
_id: true,
|
|
129
|
-
name: true,
|
|
130
|
-
version: true,
|
|
131
|
-
probeVersion: true,
|
|
132
|
-
createdAt: true,
|
|
133
|
-
key: true,
|
|
134
|
-
},
|
|
135
|
-
props: { isRoot: true },
|
|
136
|
-
});
|
|
137
|
-
|
|
138
|
-
if (!fetchedProbe) {
|
|
139
|
-
// fail the test.
|
|
140
|
-
fail("Probe not found in the database");
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
expect(fetchedProbe._id).toEqual(savedProbe._id);
|
|
144
|
-
expect(fetchedProbe.name).toEqual(name);
|
|
145
|
-
expect(fetchedProbe.probeVersion?.toString()).toEqual(
|
|
146
|
-
probeVersion?.toString(),
|
|
147
|
-
);
|
|
148
|
-
expect(fetchedProbe.createdAt).toBeTruthy();
|
|
149
|
-
expect(fetchedProbe.version).toBeTruthy();
|
|
150
|
-
expect(fetchedProbe._id).toBeTruthy();
|
|
151
|
-
expect(fetchedProbe.key?.toString()).toEqual(key?.toString());
|
|
152
|
-
});
|
|
153
|
-
|
|
154
|
-
test("findOneBy by invalid name", async () => {
|
|
155
|
-
const name: string = Faker.generateName();
|
|
156
|
-
const probeVersion: Version = new Version("1.0.2");
|
|
157
|
-
const key: ObjectID = ObjectID.generate();
|
|
158
|
-
const probe: Probe = new Probe();
|
|
159
|
-
probe.name = name;
|
|
160
|
-
probe.probeVersion = probeVersion;
|
|
161
|
-
probe.key = key.toString();
|
|
162
|
-
probe.description = "test description";
|
|
5
|
+
import { describe, expect, test, beforeEach } from "@jest/globals";
|
|
163
6
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
props: {
|
|
167
|
-
isRoot: true,
|
|
168
|
-
},
|
|
169
|
-
});
|
|
170
|
-
|
|
171
|
-
const fetchedProbe: Probe | null = await ProbeService.findOneBy({
|
|
172
|
-
query: {
|
|
173
|
-
name: name + "-invalid",
|
|
174
|
-
},
|
|
175
|
-
select: {
|
|
176
|
-
_id: true,
|
|
177
|
-
name: true,
|
|
178
|
-
version: true,
|
|
179
|
-
probeVersion: true,
|
|
180
|
-
createdAt: true,
|
|
181
|
-
key: true,
|
|
182
|
-
},
|
|
183
|
-
props: { isRoot: true },
|
|
184
|
-
});
|
|
185
|
-
|
|
186
|
-
expect(fetchedProbe).toBeNull();
|
|
187
|
-
});
|
|
188
|
-
|
|
189
|
-
test("select columns should work", async () => {
|
|
190
|
-
const name: string = Faker.generateName();
|
|
191
|
-
const probeVersion: Version = new Version("1.0.2");
|
|
192
|
-
const key: ObjectID = ObjectID.generate();
|
|
193
|
-
const probe: Probe = new Probe();
|
|
194
|
-
probe.name = name;
|
|
195
|
-
probe.probeVersion = probeVersion;
|
|
196
|
-
probe.key = key.toString();
|
|
197
|
-
probe.description = "test description";
|
|
198
|
-
|
|
199
|
-
await ProbeService.create({
|
|
200
|
-
data: probe,
|
|
201
|
-
props: {
|
|
202
|
-
isRoot: true,
|
|
203
|
-
},
|
|
204
|
-
});
|
|
205
|
-
|
|
206
|
-
const fetchedProbe: Probe | null = await ProbeService.findOneBy({
|
|
207
|
-
query: {
|
|
208
|
-
name: name,
|
|
209
|
-
},
|
|
210
|
-
select: {
|
|
211
|
-
_id: true,
|
|
212
|
-
name: true,
|
|
213
|
-
createdAt: true,
|
|
214
|
-
},
|
|
215
|
-
props: { isRoot: true },
|
|
216
|
-
});
|
|
217
|
-
|
|
218
|
-
expect(fetchedProbe).toBeTruthy();
|
|
219
|
-
expect(fetchedProbe!.name).toBe(name);
|
|
220
|
-
expect(fetchedProbe?._id).toBeTruthy();
|
|
221
|
-
expect(fetchedProbe?.key).toBeFalsy();
|
|
222
|
-
expect(fetchedProbe?.createdAt).toBeTruthy(); // this is the default column and it should be always truthy
|
|
223
|
-
expect(fetchedProbe?.createdByUserId).toBeFalsy();
|
|
224
|
-
expect(fetchedProbe?.probeVersion).toBeFalsy();
|
|
225
|
-
});
|
|
226
|
-
|
|
227
|
-
test("findOneBy by key", async () => {
|
|
228
|
-
const name: string = Faker.generateName();
|
|
229
|
-
const probeVersion: Version = new Version("1.0.2");
|
|
230
|
-
const key: ObjectID = ObjectID.generate();
|
|
231
|
-
const probe: Probe = new Probe();
|
|
232
|
-
probe.name = name;
|
|
233
|
-
probe.probeVersion = probeVersion;
|
|
234
|
-
probe.key = key.toString();
|
|
235
|
-
probe.description = "test description";
|
|
236
|
-
|
|
237
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
238
|
-
data: probe,
|
|
239
|
-
props: {
|
|
240
|
-
isRoot: true,
|
|
241
|
-
},
|
|
242
|
-
});
|
|
7
|
+
describe("Probe Model", () => {
|
|
8
|
+
let probe: Probe;
|
|
243
9
|
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
key: key.toString(),
|
|
247
|
-
},
|
|
248
|
-
select: {
|
|
249
|
-
_id: true,
|
|
250
|
-
name: true,
|
|
251
|
-
version: true,
|
|
252
|
-
probeVersion: true,
|
|
253
|
-
createdAt: true,
|
|
254
|
-
key: true,
|
|
255
|
-
},
|
|
256
|
-
props: { isRoot: true },
|
|
257
|
-
});
|
|
258
|
-
|
|
259
|
-
if (!fetchedProbe) {
|
|
260
|
-
// fail the test.
|
|
261
|
-
fail("Probe not found in the database");
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
expect(fetchedProbe._id).toEqual(savedProbe._id);
|
|
265
|
-
expect(fetchedProbe.name).toEqual(name);
|
|
266
|
-
expect(fetchedProbe.probeVersion?.toString()).toEqual(
|
|
267
|
-
probeVersion?.toString(),
|
|
268
|
-
);
|
|
269
|
-
expect(fetchedProbe.createdAt).toBeTruthy();
|
|
270
|
-
expect(fetchedProbe.version).toBeTruthy();
|
|
271
|
-
expect(fetchedProbe._id).toBeTruthy();
|
|
272
|
-
expect(fetchedProbe.key?.toString()).toEqual(key?.toString());
|
|
10
|
+
beforeEach(() => {
|
|
11
|
+
probe = new Probe();
|
|
273
12
|
});
|
|
274
13
|
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
const key1: ObjectID = ObjectID.generate();
|
|
279
|
-
const probe: Probe = new Probe();
|
|
280
|
-
probe.name = name1;
|
|
281
|
-
probe.probeVersion = probeVersion1;
|
|
282
|
-
probe.key = key1.toString();
|
|
283
|
-
probe.description = "test description";
|
|
284
|
-
|
|
285
|
-
const savedProbe1: Probe = await ProbeService.create({
|
|
286
|
-
data: probe,
|
|
287
|
-
props: {
|
|
288
|
-
isRoot: true,
|
|
289
|
-
},
|
|
14
|
+
describe("constructor", () => {
|
|
15
|
+
test("should create a new Probe instance", () => {
|
|
16
|
+
expect(probe).toBeInstanceOf(Probe);
|
|
290
17
|
});
|
|
291
18
|
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
probe2.name = name2;
|
|
297
|
-
probe2.probeVersion = probeVersion2;
|
|
298
|
-
probe2.key = key2.toString();
|
|
299
|
-
probe2.description = "test description";
|
|
300
|
-
|
|
301
|
-
const savedProbe2: Probe = await ProbeService.create({
|
|
302
|
-
data: probe2,
|
|
303
|
-
props: {
|
|
304
|
-
isRoot: true,
|
|
305
|
-
},
|
|
306
|
-
});
|
|
307
|
-
|
|
308
|
-
const fetchedProbes: Array<Probe> = await ProbeService.findBy({
|
|
309
|
-
query: {},
|
|
310
|
-
select: {
|
|
311
|
-
_id: true,
|
|
312
|
-
name: true,
|
|
313
|
-
version: true,
|
|
314
|
-
probeVersion: true,
|
|
315
|
-
createdAt: true,
|
|
316
|
-
key: true,
|
|
317
|
-
},
|
|
318
|
-
limit: new PositiveNumber(10),
|
|
319
|
-
skip: new PositiveNumber(0),
|
|
320
|
-
props: { isRoot: true },
|
|
19
|
+
test("should create a Probe with an ID", () => {
|
|
20
|
+
const id: ObjectID = ObjectID.generate();
|
|
21
|
+
const probeWithId: Probe = new Probe(id);
|
|
22
|
+
expect(probeWithId.id).toEqual(id);
|
|
321
23
|
});
|
|
322
|
-
|
|
323
|
-
if (fetchedProbes.length !== 2) {
|
|
324
|
-
// fail the test.
|
|
325
|
-
fail("Probe not found in the database");
|
|
326
|
-
}
|
|
327
|
-
|
|
328
|
-
expect(fetchedProbes[0]?._id).toEqual(savedProbe2._id);
|
|
329
|
-
expect(fetchedProbes[0]?.name).toEqual(name2);
|
|
330
|
-
expect(fetchedProbes[0]?.probeVersion?.toString()).toEqual(
|
|
331
|
-
probeVersion2.toString(),
|
|
332
|
-
);
|
|
333
|
-
expect(fetchedProbes[0]?.createdAt).toBeTruthy();
|
|
334
|
-
expect(fetchedProbes[0]?.version).toBeTruthy();
|
|
335
|
-
expect(fetchedProbes[0]?._id).toBeTruthy();
|
|
336
|
-
expect(fetchedProbes[0]?.key?.toString()).toEqual(key2.toString());
|
|
337
|
-
|
|
338
|
-
expect(fetchedProbes[1]?._id).toEqual(savedProbe1._id);
|
|
339
|
-
expect(fetchedProbes[1]?.name).toEqual(name1);
|
|
340
|
-
expect(fetchedProbes[1]?.probeVersion?.toString()).toEqual(
|
|
341
|
-
probeVersion1.toString(),
|
|
342
|
-
);
|
|
343
|
-
expect(fetchedProbes[1]?.createdAt).toBeTruthy();
|
|
344
|
-
expect(fetchedProbes[1]?.version).toBeTruthy();
|
|
345
|
-
expect(fetchedProbes[1]?._id).toBeTruthy();
|
|
346
|
-
expect(fetchedProbes[1]?.key?.toString()).toEqual(key1.toString());
|
|
347
24
|
});
|
|
348
25
|
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
for (let i: number = 0; i < 20; i++) {
|
|
26
|
+
describe("name property", () => {
|
|
27
|
+
test("should set and get name correctly", () => {
|
|
353
28
|
const name: string = Faker.generateName();
|
|
354
|
-
const probeVersion: Version = new Version("1.0.2");
|
|
355
|
-
const key: ObjectID = ObjectID.generate();
|
|
356
|
-
|
|
357
|
-
const probe: Probe = new Probe();
|
|
358
29
|
probe.name = name;
|
|
359
|
-
probe.
|
|
360
|
-
probe.key = key.toString();
|
|
361
|
-
probe.description = "test description";
|
|
362
|
-
|
|
363
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
364
|
-
data: probe,
|
|
365
|
-
props: {
|
|
366
|
-
isRoot: true,
|
|
367
|
-
},
|
|
368
|
-
});
|
|
369
|
-
|
|
370
|
-
savedProbes.push(savedProbe);
|
|
371
|
-
}
|
|
372
|
-
|
|
373
|
-
const fetchedProbes: Array<Probe> = await ProbeService.findBy({
|
|
374
|
-
query: {},
|
|
375
|
-
select: {
|
|
376
|
-
_id: true,
|
|
377
|
-
name: true,
|
|
378
|
-
version: true,
|
|
379
|
-
probeVersion: true,
|
|
380
|
-
createdAt: true,
|
|
381
|
-
key: true,
|
|
382
|
-
},
|
|
383
|
-
limit: new PositiveNumber(10),
|
|
384
|
-
skip: new PositiveNumber(0),
|
|
385
|
-
props: { isRoot: true },
|
|
30
|
+
expect(probe.name).toBe(name);
|
|
386
31
|
});
|
|
387
32
|
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
}
|
|
392
|
-
|
|
393
|
-
if (fetchedProbes.length !== 10) {
|
|
394
|
-
// fail the test.
|
|
395
|
-
fail("Probe fetch limit breached");
|
|
396
|
-
}
|
|
397
|
-
|
|
398
|
-
for (let i: number = 0; i < fetchedProbes.length; i++) {
|
|
399
|
-
expect(fetchedProbes[i]?._id).toEqual(savedProbes[19 - i]?._id);
|
|
400
|
-
expect(fetchedProbes[i]?.name).toEqual(savedProbes[19 - i]?.name);
|
|
401
|
-
expect(fetchedProbes[i]?.probeVersion?.toString()).toEqual(
|
|
402
|
-
savedProbes[19 - i]?.probeVersion?.toString(),
|
|
403
|
-
);
|
|
404
|
-
expect(fetchedProbes[i]?.createdAt).toBeTruthy();
|
|
405
|
-
expect(fetchedProbes[i]?.version).toBeTruthy();
|
|
406
|
-
expect(fetchedProbes[i]?._id).toBeTruthy();
|
|
407
|
-
expect(fetchedProbes[i]?.key?.toString()).toEqual(
|
|
408
|
-
savedProbes[19 - i]?.key?.toString(),
|
|
409
|
-
);
|
|
410
|
-
}
|
|
411
|
-
});
|
|
412
|
-
|
|
413
|
-
test("findBy skip", async () => {
|
|
414
|
-
const savedProbes: Array<Probe> = [];
|
|
415
|
-
|
|
416
|
-
for (let i: number = 0; i < 20; i++) {
|
|
417
|
-
const name: string = Faker.generateName();
|
|
418
|
-
const probeVersion: Version = new Version("1.0.2");
|
|
419
|
-
const key: ObjectID = ObjectID.generate();
|
|
420
|
-
|
|
421
|
-
const probe: Probe = new Probe();
|
|
422
|
-
probe.name = name;
|
|
423
|
-
probe.probeVersion = probeVersion;
|
|
424
|
-
probe.key = key.toString();
|
|
425
|
-
probe.description = "test description";
|
|
426
|
-
|
|
427
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
428
|
-
data: probe,
|
|
429
|
-
props: {
|
|
430
|
-
isRoot: true,
|
|
431
|
-
},
|
|
432
|
-
});
|
|
433
|
-
|
|
434
|
-
savedProbes.push(savedProbe);
|
|
435
|
-
}
|
|
436
|
-
|
|
437
|
-
const fetchedProbes: Array<Probe> = await ProbeService.findBy({
|
|
438
|
-
query: {},
|
|
439
|
-
select: {
|
|
440
|
-
_id: true,
|
|
441
|
-
name: true,
|
|
442
|
-
version: true,
|
|
443
|
-
probeVersion: true,
|
|
444
|
-
createdAt: true,
|
|
445
|
-
key: true,
|
|
446
|
-
},
|
|
447
|
-
limit: new PositiveNumber(10),
|
|
448
|
-
skip: new PositiveNumber(10),
|
|
449
|
-
props: { isRoot: true },
|
|
33
|
+
test("should allow empty name", () => {
|
|
34
|
+
probe.name = "";
|
|
35
|
+
expect(probe.name).toBe("");
|
|
450
36
|
});
|
|
451
|
-
|
|
452
|
-
if (savedProbes.length !== 20) {
|
|
453
|
-
// fail the test.
|
|
454
|
-
fail("Probe not saved successfully");
|
|
455
|
-
}
|
|
456
|
-
|
|
457
|
-
if (fetchedProbes.length !== 10) {
|
|
458
|
-
// fail the test.
|
|
459
|
-
fail("Probe fetch limit breached");
|
|
460
|
-
}
|
|
461
|
-
|
|
462
|
-
for (let i: number = 0; i < fetchedProbes.length; i++) {
|
|
463
|
-
expect(fetchedProbes[i]?._id).toEqual(savedProbes[9 - i]?._id);
|
|
464
|
-
expect(fetchedProbes[i]?.name).toEqual(savedProbes[9 - i]?.name);
|
|
465
|
-
expect(fetchedProbes[i]?.probeVersion?.toString()).toEqual(
|
|
466
|
-
savedProbes[9 - i]?.probeVersion?.toString(),
|
|
467
|
-
);
|
|
468
|
-
expect(fetchedProbes[i]?.createdAt).toBeTruthy();
|
|
469
|
-
expect(fetchedProbes[i]?.version).toBeTruthy();
|
|
470
|
-
expect(fetchedProbes[i]?._id).toBeTruthy();
|
|
471
|
-
expect(fetchedProbes[i]?.key?.toString()).toEqual(
|
|
472
|
-
savedProbes[9 - i]?.key?.toString(),
|
|
473
|
-
);
|
|
474
|
-
}
|
|
475
37
|
});
|
|
476
38
|
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
probe.name = name;
|
|
483
|
-
probe.probeVersion = probeVersion;
|
|
484
|
-
probe.key = key.toString();
|
|
485
|
-
probe.description = "test description";
|
|
486
|
-
|
|
487
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
488
|
-
data: probe,
|
|
489
|
-
props: {
|
|
490
|
-
isRoot: true,
|
|
491
|
-
},
|
|
39
|
+
describe("probeVersion property", () => {
|
|
40
|
+
test("should set and get version correctly", () => {
|
|
41
|
+
const version: Version = new Version("1.0.0");
|
|
42
|
+
probe.probeVersion = version;
|
|
43
|
+
expect(probe.probeVersion?.toString()).toBe("1.0.0");
|
|
492
44
|
});
|
|
493
45
|
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
key: key.toString(),
|
|
499
|
-
},
|
|
500
|
-
skip: 0,
|
|
501
|
-
limit: 1,
|
|
502
|
-
props: { isRoot: true },
|
|
503
|
-
});
|
|
504
|
-
|
|
505
|
-
const fetchedProbe: Probe | null = await ProbeService.findOneBy({
|
|
506
|
-
query: {
|
|
507
|
-
key: key.toString(),
|
|
508
|
-
},
|
|
509
|
-
select: {
|
|
510
|
-
_id: true,
|
|
511
|
-
name: true,
|
|
512
|
-
version: true,
|
|
513
|
-
probeVersion: true,
|
|
514
|
-
createdAt: true,
|
|
515
|
-
key: true,
|
|
516
|
-
},
|
|
517
|
-
props: { isRoot: true },
|
|
46
|
+
test("should handle different version formats", () => {
|
|
47
|
+
const version: Version = new Version("2.5.10");
|
|
48
|
+
probe.probeVersion = version;
|
|
49
|
+
expect(probe.probeVersion?.toString()).toBe("2.5.10");
|
|
518
50
|
});
|
|
519
|
-
|
|
520
|
-
expect(fetchedProbe).toBeNull();
|
|
521
51
|
});
|
|
522
52
|
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
const probe: Probe = new Probe();
|
|
529
|
-
probe.name = name;
|
|
530
|
-
probe.probeVersion = probeVersion;
|
|
531
|
-
probe.key = key.toString();
|
|
532
|
-
probe.description = "test description";
|
|
533
|
-
|
|
534
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
535
|
-
data: probe,
|
|
536
|
-
props: {
|
|
537
|
-
isRoot: true,
|
|
538
|
-
},
|
|
53
|
+
describe("key property", () => {
|
|
54
|
+
test("should set and get key correctly", () => {
|
|
55
|
+
const key: string = ObjectID.generate().toString();
|
|
56
|
+
probe.key = key;
|
|
57
|
+
expect(probe.key).toBe(key);
|
|
539
58
|
});
|
|
540
59
|
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
query: {
|
|
546
|
-
key: key.toString(),
|
|
547
|
-
},
|
|
548
|
-
data: {
|
|
549
|
-
name: updatedName,
|
|
550
|
-
},
|
|
551
|
-
props: { isRoot: true },
|
|
60
|
+
test("should handle UUID format keys", () => {
|
|
61
|
+
const key: string = "550e8400-e29b-41d4-a716-446655440000";
|
|
62
|
+
probe.key = key;
|
|
63
|
+
expect(probe.key).toBe(key);
|
|
552
64
|
});
|
|
553
|
-
|
|
554
|
-
const fetchedProbe: Probe | null = await ProbeService.findOneBy({
|
|
555
|
-
query: {
|
|
556
|
-
key: key.toString(),
|
|
557
|
-
},
|
|
558
|
-
select: {
|
|
559
|
-
_id: true,
|
|
560
|
-
name: true,
|
|
561
|
-
version: true,
|
|
562
|
-
probeVersion: true,
|
|
563
|
-
createdAt: true,
|
|
564
|
-
key: true,
|
|
565
|
-
},
|
|
566
|
-
props: { isRoot: true },
|
|
567
|
-
});
|
|
568
|
-
|
|
569
|
-
expect(fetchedProbe).toBeTruthy();
|
|
570
|
-
expect(fetchedProbe?.name).toBe(updatedName);
|
|
571
65
|
});
|
|
572
66
|
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
const probe: Probe = new Probe();
|
|
579
|
-
probe.name = name;
|
|
580
|
-
probe.probeVersion = probeVersion;
|
|
581
|
-
probe.key = key.toString();
|
|
582
|
-
probe.description = "test description";
|
|
583
|
-
|
|
584
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
585
|
-
data: probe,
|
|
586
|
-
props: {
|
|
587
|
-
isRoot: true,
|
|
588
|
-
},
|
|
589
|
-
});
|
|
590
|
-
|
|
591
|
-
expect(savedProbe).toBeTruthy();
|
|
592
|
-
|
|
593
|
-
const updatedName: string = Faker.generateName();
|
|
594
|
-
await ProbeService.updateBy({
|
|
595
|
-
query: {
|
|
596
|
-
key: key.toString(),
|
|
597
|
-
},
|
|
598
|
-
skip: 0,
|
|
599
|
-
limit: 1,
|
|
600
|
-
data: {
|
|
601
|
-
name: updatedName,
|
|
602
|
-
},
|
|
603
|
-
props: { isRoot: true },
|
|
67
|
+
describe("description property", () => {
|
|
68
|
+
test("should set and get description correctly", () => {
|
|
69
|
+
const description: string = "Test probe description";
|
|
70
|
+
probe.description = description;
|
|
71
|
+
expect(probe.description).toBe(description);
|
|
604
72
|
});
|
|
605
73
|
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
select: {
|
|
611
|
-
_id: true,
|
|
612
|
-
name: true,
|
|
613
|
-
version: true,
|
|
614
|
-
probeVersion: true,
|
|
615
|
-
createdAt: true,
|
|
616
|
-
key: true,
|
|
617
|
-
},
|
|
618
|
-
props: { isRoot: true },
|
|
74
|
+
test("should handle long descriptions", () => {
|
|
75
|
+
const longDescription: string = "A".repeat(1000);
|
|
76
|
+
probe.description = longDescription;
|
|
77
|
+
expect(probe.description).toBe(longDescription);
|
|
619
78
|
});
|
|
620
|
-
|
|
621
|
-
expect(fetchedProbe).toBeTruthy();
|
|
622
|
-
expect(fetchedProbe?.name).toBe(updatedName);
|
|
623
79
|
});
|
|
624
80
|
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
const key: ObjectID = ObjectID.generate();
|
|
629
|
-
|
|
630
|
-
const probe: Probe = new Probe();
|
|
631
|
-
probe.name = name;
|
|
632
|
-
probe.probeVersion = probeVersion;
|
|
633
|
-
probe.key = key.toString();
|
|
634
|
-
probe.description = "test description";
|
|
635
|
-
|
|
636
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
637
|
-
data: probe,
|
|
638
|
-
props: {
|
|
639
|
-
isRoot: true,
|
|
640
|
-
},
|
|
81
|
+
describe("isGlobalProbe property", () => {
|
|
82
|
+
test("should default to undefined", () => {
|
|
83
|
+
expect(probe.isGlobalProbe).toBeUndefined();
|
|
641
84
|
});
|
|
642
85
|
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
test("add user to createdBy column", async () => {
|
|
648
|
-
let user: User = UserTestService.generateRandomUser();
|
|
649
|
-
|
|
650
|
-
user = await UserService.create({
|
|
651
|
-
data: user,
|
|
652
|
-
props: {
|
|
653
|
-
isRoot: true,
|
|
654
|
-
},
|
|
86
|
+
test("should set global flag to true", () => {
|
|
87
|
+
probe.isGlobalProbe = true;
|
|
88
|
+
expect(probe.isGlobalProbe).toBe(true);
|
|
655
89
|
});
|
|
656
90
|
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
const probe: Probe = new Probe();
|
|
662
|
-
probe.name = name;
|
|
663
|
-
probe.probeVersion = probeVersion;
|
|
664
|
-
probe.key = key.toString();
|
|
665
|
-
probe.description = "test description";
|
|
666
|
-
|
|
667
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
668
|
-
data: probe,
|
|
669
|
-
props: {
|
|
670
|
-
isRoot: true,
|
|
671
|
-
},
|
|
91
|
+
test("should set global flag to false", () => {
|
|
92
|
+
probe.isGlobalProbe = false;
|
|
93
|
+
expect(probe.isGlobalProbe).toBe(false);
|
|
672
94
|
});
|
|
673
|
-
|
|
674
|
-
savedProbe.createdByUser = user;
|
|
675
|
-
await ProbeService.updateOneById({
|
|
676
|
-
id: savedProbe.id!,
|
|
677
|
-
data: {
|
|
678
|
-
createdByUserId: user.id!,
|
|
679
|
-
},
|
|
680
|
-
props: {
|
|
681
|
-
isRoot: true,
|
|
682
|
-
},
|
|
683
|
-
});
|
|
684
|
-
|
|
685
|
-
const findProbe: Probe | null = await ProbeService.findOneBy({
|
|
686
|
-
query: {
|
|
687
|
-
_id: savedProbe._id!,
|
|
688
|
-
},
|
|
689
|
-
select: {
|
|
690
|
-
_id: true,
|
|
691
|
-
name: true,
|
|
692
|
-
version: true,
|
|
693
|
-
probeVersion: true,
|
|
694
|
-
createdAt: true,
|
|
695
|
-
key: true,
|
|
696
|
-
createdByUserId: true,
|
|
697
|
-
},
|
|
698
|
-
props: { isRoot: true },
|
|
699
|
-
});
|
|
700
|
-
|
|
701
|
-
expect(findProbe).toBeTruthy();
|
|
702
|
-
expect(findProbe?.createdByUserId?.toString()).toContain(user._id);
|
|
703
95
|
});
|
|
704
96
|
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
props: {
|
|
711
|
-
isRoot: true,
|
|
712
|
-
},
|
|
97
|
+
describe("lastAlive property", () => {
|
|
98
|
+
test("should set and get lastAlive date", () => {
|
|
99
|
+
const date: Date = new Date();
|
|
100
|
+
probe.lastAlive = date;
|
|
101
|
+
expect(probe.lastAlive).toBe(date);
|
|
713
102
|
});
|
|
714
|
-
|
|
715
|
-
const name: string = Faker.generateName();
|
|
716
|
-
const probeVersion: Version = new Version("1.0.2");
|
|
717
|
-
const key: ObjectID = ObjectID.generate();
|
|
718
|
-
|
|
719
|
-
const probe: Probe = new Probe();
|
|
720
|
-
probe.name = name;
|
|
721
|
-
probe.probeVersion = probeVersion;
|
|
722
|
-
probe.key = key.toString();
|
|
723
|
-
probe.description = "test description";
|
|
724
|
-
|
|
725
|
-
const savedProbe: Probe = await ProbeService.create({
|
|
726
|
-
data: probe,
|
|
727
|
-
props: {
|
|
728
|
-
isRoot: true,
|
|
729
|
-
},
|
|
730
|
-
});
|
|
731
|
-
|
|
732
|
-
savedProbe.createdByUser = user;
|
|
733
|
-
await ProbeService.updateOneById({
|
|
734
|
-
id: savedProbe.id!,
|
|
735
|
-
data: {
|
|
736
|
-
createdByUserId: user.id!,
|
|
737
|
-
},
|
|
738
|
-
props: {
|
|
739
|
-
isRoot: true,
|
|
740
|
-
},
|
|
741
|
-
});
|
|
742
|
-
|
|
743
|
-
const findProbe: Probe | null = await ProbeService.findOneBy({
|
|
744
|
-
query: {
|
|
745
|
-
_id: savedProbe._id!,
|
|
746
|
-
},
|
|
747
|
-
select: {
|
|
748
|
-
_id: true,
|
|
749
|
-
name: true,
|
|
750
|
-
version: true,
|
|
751
|
-
probeVersion: true,
|
|
752
|
-
createdAt: true,
|
|
753
|
-
key: true,
|
|
754
|
-
createdByUser: {
|
|
755
|
-
_id: true,
|
|
756
|
-
name: true,
|
|
757
|
-
},
|
|
758
|
-
},
|
|
759
|
-
props: { isRoot: true },
|
|
760
|
-
});
|
|
761
|
-
|
|
762
|
-
expect(findProbe).toBeTruthy();
|
|
763
|
-
expect(findProbe?.createdByUser?._id).toContain(user._id);
|
|
764
|
-
expect(findProbe?.createdByUser?.name?.toString()).toBeTruthy();
|
|
765
|
-
expect(user.name?.toString()).toBeTruthy();
|
|
766
|
-
expect(findProbe?.createdByUser?.name?.toString()).toContain(
|
|
767
|
-
user.name?.toString(),
|
|
768
|
-
);
|
|
769
103
|
});
|
|
770
104
|
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
props: {
|
|
777
|
-
isRoot: true,
|
|
778
|
-
},
|
|
105
|
+
describe("slug property", () => {
|
|
106
|
+
test("should set and get slug correctly", () => {
|
|
107
|
+
const slug: string = "test-probe-slug";
|
|
108
|
+
probe.slug = slug;
|
|
109
|
+
expect(probe.slug).toBe(slug);
|
|
779
110
|
});
|
|
111
|
+
});
|
|
780
112
|
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
probe.key = key.toString();
|
|
789
|
-
probe.description = "test description";
|
|
113
|
+
describe("Probe with multiple properties", () => {
|
|
114
|
+
test("should handle all properties together", () => {
|
|
115
|
+
const id: ObjectID = ObjectID.generate();
|
|
116
|
+
const name: string = Faker.generateName();
|
|
117
|
+
const version: Version = new Version("3.0.0");
|
|
118
|
+
const key: string = ObjectID.generate().toString();
|
|
119
|
+
const description: string = "Full probe test";
|
|
790
120
|
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
121
|
+
const fullProbe: Probe = new Probe(id);
|
|
122
|
+
fullProbe.name = name;
|
|
123
|
+
fullProbe.probeVersion = version;
|
|
124
|
+
fullProbe.key = key;
|
|
125
|
+
fullProbe.description = description;
|
|
126
|
+
fullProbe.isGlobalProbe = true;
|
|
797
127
|
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
props: {
|
|
805
|
-
isRoot: true,
|
|
806
|
-
},
|
|
128
|
+
expect(fullProbe.id).toEqual(id);
|
|
129
|
+
expect(fullProbe.name).toBe(name);
|
|
130
|
+
expect(fullProbe.probeVersion?.toString()).toBe("3.0.0");
|
|
131
|
+
expect(fullProbe.key).toBe(key);
|
|
132
|
+
expect(fullProbe.description).toBe(description);
|
|
133
|
+
expect(fullProbe.isGlobalProbe).toBe(true);
|
|
807
134
|
});
|
|
808
135
|
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
136
|
+
test("should create probe with minimal properties", () => {
|
|
137
|
+
const minimalProbe: Probe = new Probe();
|
|
138
|
+
minimalProbe.name = "Minimal";
|
|
812
139
|
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
},
|
|
817
|
-
select: {
|
|
818
|
-
_id: true,
|
|
819
|
-
name: true,
|
|
820
|
-
version: true,
|
|
821
|
-
probeVersion: true,
|
|
822
|
-
createdAt: true,
|
|
823
|
-
key: true,
|
|
824
|
-
createdByUser: {
|
|
825
|
-
_id: true,
|
|
826
|
-
name: true,
|
|
827
|
-
},
|
|
828
|
-
},
|
|
829
|
-
props: { isRoot: true },
|
|
140
|
+
expect(minimalProbe.name).toBe("Minimal");
|
|
141
|
+
expect(minimalProbe.key).toBeUndefined();
|
|
142
|
+
expect(minimalProbe.description).toBeUndefined();
|
|
830
143
|
});
|
|
831
|
-
|
|
832
|
-
expect(findProbe).toBeTruthy();
|
|
833
|
-
expect(findProbe?.createdByUser?._id).toContain(user._id);
|
|
834
|
-
expect(findProbe?.createdByUser?.name?.toString()).toContain(
|
|
835
|
-
user.name?.toString(),
|
|
836
|
-
);
|
|
837
144
|
});
|
|
838
145
|
});
|