@kidemy/lib 1.0.6 → 1.0.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kidemy/lib",
3
- "version": "1.0.6",
3
+ "version": "1.0.7",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -1 +0,0 @@
1
- export {};
@@ -1,187 +0,0 @@
1
- import { UpdateAccountDtoSchema } from '../model/account.dto';
2
- describe('AccountDto Schemas', () => {
3
- describe('UpdateAccountDtoSchema', () => {
4
- it('should validate a valid update account DTO with name', () => {
5
- const validDto = {
6
- name: 'Updated Account Name',
7
- };
8
- const result = UpdateAccountDtoSchema.safeParse(validDto);
9
- expect(result.success).toBe(true);
10
- if (result.success) {
11
- expect(result.data.name).toBe('Updated Account Name');
12
- expect(result.data.language).toBeUndefined();
13
- }
14
- });
15
- it('should validate a valid update account DTO with language', () => {
16
- const validDto = {
17
- language: 'en',
18
- };
19
- const result = UpdateAccountDtoSchema.safeParse(validDto);
20
- expect(result.success).toBe(true);
21
- if (result.success) {
22
- expect(result.data.language).toBe('en');
23
- expect(result.data.name).toBeUndefined();
24
- }
25
- });
26
- it('should validate a valid update account DTO with both name and language', () => {
27
- const validDto = {
28
- name: 'Updated Account Name',
29
- language: 'fr',
30
- };
31
- const result = UpdateAccountDtoSchema.safeParse(validDto);
32
- expect(result.success).toBe(true);
33
- if (result.success) {
34
- expect(result.data.name).toBe('Updated Account Name');
35
- expect(result.data.language).toBe('fr');
36
- }
37
- });
38
- it('should reject empty DTO (at least one field required)', () => {
39
- const emptyDto = {};
40
- const result = UpdateAccountDtoSchema.safeParse(emptyDto);
41
- expect(result.success).toBe(false);
42
- if (!result.success) {
43
- expect(result.error.issues[0].message).toBe('At least one field must be provided for update');
44
- }
45
- });
46
- it('should reject empty name string', () => {
47
- const invalidDto = {
48
- name: '',
49
- };
50
- const result = UpdateAccountDtoSchema.safeParse(invalidDto);
51
- expect(result.success).toBe(false);
52
- if (!result.success) {
53
- expect(result.error.issues[0].path).toEqual(['name']);
54
- expect(result.error.issues[0].message).toBe('Name is required');
55
- }
56
- });
57
- it('should reject name longer than 255 characters', () => {
58
- const invalidDto = {
59
- name: 'A'.repeat(256),
60
- };
61
- const result = UpdateAccountDtoSchema.safeParse(invalidDto);
62
- expect(result.success).toBe(false);
63
- if (!result.success) {
64
- expect(result.error.issues[0].path).toEqual(['name']);
65
- expect(result.error.issues[0].message).toBe('Name must be less than 255 characters');
66
- }
67
- });
68
- it('should accept name with exactly 255 characters', () => {
69
- const validDto = {
70
- name: 'A'.repeat(255),
71
- };
72
- const result = UpdateAccountDtoSchema.safeParse(validDto);
73
- expect(result.success).toBe(true);
74
- if (result.success) {
75
- expect(result.data.name).toBe('A'.repeat(255));
76
- }
77
- });
78
- it('should reject language shorter than 2 characters', () => {
79
- const invalidDto = {
80
- language: 'e',
81
- };
82
- const result = UpdateAccountDtoSchema.safeParse(invalidDto);
83
- expect(result.success).toBe(false);
84
- if (!result.success) {
85
- expect(result.error.issues[0].path).toEqual(['language']);
86
- expect(result.error.issues[0].message).toBe('Language must be at least 2 characters');
87
- }
88
- });
89
- it('should reject language longer than 10 characters', () => {
90
- const invalidDto = {
91
- language: 'A'.repeat(11),
92
- };
93
- const result = UpdateAccountDtoSchema.safeParse(invalidDto);
94
- expect(result.success).toBe(false);
95
- if (!result.success) {
96
- expect(result.error.issues[0].path).toEqual(['language']);
97
- expect(result.error.issues[0].message).toBe('Language must be less than 10 characters');
98
- }
99
- });
100
- it('should accept language with exactly 2 characters', () => {
101
- const validDto = {
102
- language: 'en',
103
- };
104
- const result = UpdateAccountDtoSchema.safeParse(validDto);
105
- expect(result.success).toBe(true);
106
- if (result.success) {
107
- expect(result.data.language).toBe('en');
108
- }
109
- });
110
- it('should accept language with exactly 10 characters', () => {
111
- const validDto = {
112
- language: 'A'.repeat(10),
113
- };
114
- const result = UpdateAccountDtoSchema.safeParse(validDto);
115
- expect(result.success).toBe(true);
116
- if (result.success) {
117
- expect(result.data.language).toBe('A'.repeat(10));
118
- }
119
- });
120
- it('should handle special characters in name', () => {
121
- const validDto = {
122
- name: "O'Connor-Smith & Co.",
123
- };
124
- const result = UpdateAccountDtoSchema.safeParse(validDto);
125
- expect(result.success).toBe(true);
126
- if (result.success) {
127
- expect(result.data.name).toBe("O'Connor-Smith & Co.");
128
- }
129
- });
130
- it('should handle unicode characters in name', () => {
131
- const validDto = {
132
- name: '账户名称',
133
- };
134
- const result = UpdateAccountDtoSchema.safeParse(validDto);
135
- expect(result.success).toBe(true);
136
- if (result.success) {
137
- expect(result.data.name).toBe('账户名称');
138
- }
139
- });
140
- it('should handle various language codes', () => {
141
- const languageCodes = ['en', 'fr', 'de', 'es', 'zh', 'ja', 'ko', 'pt-BR'];
142
- languageCodes.forEach((lang) => {
143
- const validDto = {
144
- language: lang,
145
- };
146
- const result = UpdateAccountDtoSchema.safeParse(validDto);
147
- expect(result.success).toBe(true);
148
- if (result.success) {
149
- expect(result.data.language).toBe(lang);
150
- }
151
- });
152
- });
153
- it('should reject non-string name', () => {
154
- const invalidDto = {
155
- name: 123,
156
- };
157
- const result = UpdateAccountDtoSchema.safeParse(invalidDto);
158
- expect(result.success).toBe(false);
159
- if (!result.success) {
160
- expect(result.error.issues[0].path).toEqual(['name']);
161
- expect(result.error.issues[0].code).toBe('invalid_type');
162
- }
163
- });
164
- it('should reject non-string language', () => {
165
- const invalidDto = {
166
- language: 123,
167
- };
168
- const result = UpdateAccountDtoSchema.safeParse(invalidDto);
169
- expect(result.success).toBe(false);
170
- if (!result.success) {
171
- expect(result.error.issues[0].path).toEqual(['language']);
172
- expect(result.error.issues[0].code).toBe('invalid_type');
173
- }
174
- });
175
- it('should accept whitespace-only name (Zod allows it, validation happens at service level if needed)', () => {
176
- const validDto = {
177
- name: ' ',
178
- };
179
- const result = UpdateAccountDtoSchema.safeParse(validDto);
180
- expect(result.success).toBe(true);
181
- if (result.success) {
182
- expect(result.data.name).toBe(' ');
183
- }
184
- });
185
- });
186
- });
187
- //# sourceMappingURL=account.dto.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"account.dto.spec.js","sourceRoot":"","sources":["../../src/tests/account.dto.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,410 +0,0 @@
1
- import { AssignmentDtoSchema, CreateAssignmentDtoSchema, } from '../model/assignment.dto';
2
- describe('AssignmentDto Schemas', () => {
3
- describe('CreateAssignmentDtoSchema', () => {
4
- const validCreateAssignmentDto = {
5
- assigneeId: '123e4567-e89b-12d3-a456-426614174000',
6
- prompt: 'This is a test assignment prompt',
7
- };
8
- it('should validate a valid create assignment DTO', () => {
9
- const result = CreateAssignmentDtoSchema.safeParse(validCreateAssignmentDto);
10
- expect(result.success).toBe(true);
11
- if (result.success) {
12
- expect(result.data).toEqual(validCreateAssignmentDto);
13
- }
14
- });
15
- it('should reject invalid UUID for assigneeId', () => {
16
- const invalidDto = {
17
- ...validCreateAssignmentDto,
18
- assigneeId: 'invalid-uuid',
19
- };
20
- const result = CreateAssignmentDtoSchema.safeParse(invalidDto);
21
- expect(result.success).toBe(false);
22
- if (!result.success) {
23
- expect(result.error.issues[0].path).toEqual(['assigneeId']);
24
- expect(result.error.issues[0].message).toBe('Invalid assignee ID format');
25
- }
26
- });
27
- it('should reject empty prompt', () => {
28
- const invalidDto = {
29
- ...validCreateAssignmentDto,
30
- prompt: '',
31
- };
32
- const result = CreateAssignmentDtoSchema.safeParse(invalidDto);
33
- expect(result.success).toBe(false);
34
- if (!result.success) {
35
- expect(result.error.issues[0].path).toEqual(['prompt']);
36
- expect(result.error.issues[0].message).toBe('Prompt is required');
37
- }
38
- });
39
- it('should reject prompt longer than 10000 characters', () => {
40
- const invalidDto = {
41
- ...validCreateAssignmentDto,
42
- prompt: 'A'.repeat(10001),
43
- };
44
- const result = CreateAssignmentDtoSchema.safeParse(invalidDto);
45
- expect(result.success).toBe(false);
46
- if (!result.success) {
47
- expect(result.error.issues[0].path).toEqual(['prompt']);
48
- expect(result.error.issues[0].message).toBe('Prompt must be less than 10000 characters');
49
- }
50
- });
51
- it('should accept prompt with exactly 10000 characters', () => {
52
- const validDto = {
53
- ...validCreateAssignmentDto,
54
- prompt: 'A'.repeat(10000),
55
- };
56
- const result = CreateAssignmentDtoSchema.safeParse(validDto);
57
- expect(result.success).toBe(true);
58
- if (result.success) {
59
- expect(result.data.prompt).toBe('A'.repeat(10000));
60
- }
61
- });
62
- it('should reject missing required fields', () => {
63
- const requiredFields = ['assigneeId', 'prompt'];
64
- requiredFields.forEach((field) => {
65
- const invalidDto = { ...validCreateAssignmentDto };
66
- delete invalidDto[field];
67
- const result = CreateAssignmentDtoSchema.safeParse(invalidDto);
68
- expect(result.success).toBe(false);
69
- if (!result.success) {
70
- expect(result.error.issues[0].path).toEqual([field]);
71
- expect(result.error.issues[0].code).toBe('invalid_type');
72
- }
73
- });
74
- });
75
- it('should handle special characters in prompt', () => {
76
- const specialCharDto = {
77
- assigneeId: '123e4567-e89b-12d3-a456-426614174000',
78
- prompt: "This is a test assignment with special characters: José, O'Connor-Smith, and émojis 🎓📚",
79
- };
80
- const result = CreateAssignmentDtoSchema.safeParse(specialCharDto);
81
- expect(result.success).toBe(true);
82
- if (result.success) {
83
- expect(result.data.prompt).toBe("This is a test assignment with special characters: José, O'Connor-Smith, and émojis 🎓📚");
84
- }
85
- });
86
- it('should handle very long prompts', () => {
87
- const longContentDto = {
88
- assigneeId: '123e4567-e89b-12d3-a456-426614174000',
89
- prompt: 'A'.repeat(10000),
90
- };
91
- const result = CreateAssignmentDtoSchema.safeParse(longContentDto);
92
- expect(result.success).toBe(true);
93
- if (result.success) {
94
- expect(result.data.prompt).toBe('A'.repeat(10000));
95
- }
96
- });
97
- });
98
- describe('AssignmentDtoSchema', () => {
99
- const validAssignmentDto = {
100
- id: '123e4567-e89b-12d3-a456-426614174000',
101
- accountId: '123e4567-e89b-12d3-a456-426614174001',
102
- createdByUserId: '123e4567-e89b-12d3-a456-426614174002',
103
- assigneeId: '123e4567-e89b-12d3-a456-426614174003',
104
- title: 'Test Assignment',
105
- prompt: 'This is a test assignment prompt',
106
- assignment: {
107
- title: 'Test Assignment',
108
- content: 'This is a test assignment prompt',
109
- questions: [
110
- {
111
- id: 'question-1',
112
- content: 'What is the capital of France?',
113
- answers: ['Paris', 'London', 'Berlin', 'Madrid'],
114
- correctAnswerIndex: 0,
115
- answerExplanation: 'Paris is the capital of France.',
116
- },
117
- {
118
- id: 'question-2',
119
- content: 'What is 2 + 2?',
120
- answers: ['3', '4', '5', '6'],
121
- correctAnswerIndex: 1,
122
- answerExplanation: '2 + 2 equals 4.',
123
- },
124
- ],
125
- },
126
- answers: {
127
- answers: [
128
- {
129
- questionId: 'question-1',
130
- answerIndex: 0,
131
- },
132
- {
133
- questionId: 'question-2',
134
- answerIndex: 1,
135
- },
136
- ],
137
- },
138
- submittedAt: new Date('2024-01-01T00:00:00Z'),
139
- createdAt: new Date('2024-01-01T00:00:00Z'),
140
- updatedAt: new Date('2024-01-01T00:00:00Z'),
141
- };
142
- it('should validate a valid assignment DTO', () => {
143
- const result = AssignmentDtoSchema.safeParse(validAssignmentDto);
144
- expect(result.success).toBe(true);
145
- if (result.success) {
146
- expect(result.data).toEqual(validAssignmentDto);
147
- }
148
- });
149
- it('should validate assignment DTO with null answers', () => {
150
- const assignmentDtoWithNullAnswers = {
151
- ...validAssignmentDto,
152
- answers: null,
153
- submittedAt: null,
154
- };
155
- const result = AssignmentDtoSchema.safeParse(assignmentDtoWithNullAnswers);
156
- expect(result.success).toBe(true);
157
- if (result.success) {
158
- expect(result.data.answers).toBeNull();
159
- expect(result.data.submittedAt).toBeNull();
160
- }
161
- });
162
- it('should reject invalid UUID for id', () => {
163
- const invalidDto = {
164
- ...validAssignmentDto,
165
- id: 'invalid-uuid',
166
- };
167
- const result = AssignmentDtoSchema.safeParse(invalidDto);
168
- expect(result.success).toBe(false);
169
- if (!result.success) {
170
- expect(result.error.issues[0].path).toEqual(['id']);
171
- expect(result.error.issues[0].code).toBe('invalid_format');
172
- }
173
- });
174
- it('should reject invalid UUID for accountId', () => {
175
- const invalidDto = {
176
- ...validAssignmentDto,
177
- accountId: 'invalid-uuid',
178
- };
179
- const result = AssignmentDtoSchema.safeParse(invalidDto);
180
- expect(result.success).toBe(false);
181
- if (!result.success) {
182
- expect(result.error.issues[0].path).toEqual(['accountId']);
183
- expect(result.error.issues[0].code).toBe('invalid_format');
184
- }
185
- });
186
- it('should reject invalid UUID for createdByUserId', () => {
187
- const invalidDto = {
188
- ...validAssignmentDto,
189
- createdByUserId: 'invalid-uuid',
190
- };
191
- const result = AssignmentDtoSchema.safeParse(invalidDto);
192
- expect(result.success).toBe(false);
193
- if (!result.success) {
194
- expect(result.error.issues[0].path).toEqual(['createdByUserId']);
195
- expect(result.error.issues[0].code).toBe('invalid_format');
196
- }
197
- });
198
- it('should reject invalid UUID for assigneeId', () => {
199
- const invalidDto = {
200
- ...validAssignmentDto,
201
- assigneeId: 'invalid-uuid',
202
- };
203
- const result = AssignmentDtoSchema.safeParse(invalidDto);
204
- expect(result.success).toBe(false);
205
- if (!result.success) {
206
- expect(result.error.issues[0].path).toEqual(['assigneeId']);
207
- expect(result.error.issues[0].code).toBe('invalid_format');
208
- }
209
- });
210
- it('should reject empty questions array', () => {
211
- const invalidDto = {
212
- ...validAssignmentDto,
213
- assignment: {
214
- ...validAssignmentDto.assignment,
215
- questions: [],
216
- },
217
- };
218
- const result = AssignmentDtoSchema.safeParse(invalidDto);
219
- expect(result.success).toBe(true);
220
- if (result.success) {
221
- expect(result.data.assignment.questions).toEqual([]);
222
- }
223
- });
224
- it('should reject question with invalid correctAnswerIndex', () => {
225
- const invalidDto = {
226
- ...validAssignmentDto,
227
- assignment: {
228
- ...validAssignmentDto.assignment,
229
- questions: [
230
- {
231
- id: 'question-1',
232
- content: 'What is the capital of France?',
233
- answers: ['Paris', 'London', 'Berlin', 'Madrid'],
234
- correctAnswerIndex: 4,
235
- answerExplanation: 'Paris is the capital of France.',
236
- },
237
- ],
238
- },
239
- };
240
- const result = AssignmentDtoSchema.safeParse(invalidDto);
241
- expect(result.success).toBe(true);
242
- if (result.success) {
243
- expect(result.data.assignment.questions[0].correctAnswerIndex).toBe(4);
244
- }
245
- });
246
- it('should reject answer with invalid questionId', () => {
247
- var _a;
248
- const invalidDto = {
249
- ...validAssignmentDto,
250
- answers: {
251
- answers: [
252
- {
253
- questionId: '',
254
- answerIndex: 0,
255
- },
256
- ],
257
- },
258
- };
259
- const result = AssignmentDtoSchema.safeParse(invalidDto);
260
- expect(result.success).toBe(true);
261
- if (result.success) {
262
- expect((_a = result.data.answers) === null || _a === void 0 ? void 0 : _a.answers[0].questionId).toBe('');
263
- }
264
- });
265
- it('should reject invalid date for submittedAt', () => {
266
- const invalidDto = {
267
- ...validAssignmentDto,
268
- submittedAt: 'invalid-date',
269
- };
270
- const result = AssignmentDtoSchema.safeParse(invalidDto);
271
- expect(result.success).toBe(false);
272
- if (!result.success) {
273
- expect(result.error.issues[0].path).toEqual(['submittedAt']);
274
- expect(result.error.issues[0].code).toBe('invalid_type');
275
- }
276
- });
277
- it('should reject invalid date for createdAt', () => {
278
- const invalidDto = {
279
- ...validAssignmentDto,
280
- createdAt: 'invalid-date',
281
- };
282
- const result = AssignmentDtoSchema.safeParse(invalidDto);
283
- expect(result.success).toBe(false);
284
- if (!result.success) {
285
- expect(result.error.issues[0].path).toEqual(['createdAt']);
286
- expect(result.error.issues[0].code).toBe('invalid_type');
287
- }
288
- });
289
- it('should reject invalid date for updatedAt', () => {
290
- const invalidDto = {
291
- ...validAssignmentDto,
292
- updatedAt: 'invalid-date',
293
- };
294
- const result = AssignmentDtoSchema.safeParse(invalidDto);
295
- expect(result.success).toBe(false);
296
- if (!result.success) {
297
- expect(result.error.issues[0].path).toEqual(['updatedAt']);
298
- expect(result.error.issues[0].code).toBe('invalid_type');
299
- }
300
- });
301
- it('should handle multiple questions and answers', () => {
302
- var _a;
303
- const multiQuestionDto = {
304
- ...validAssignmentDto,
305
- assignment: {
306
- ...validAssignmentDto.assignment,
307
- questions: [
308
- {
309
- id: 'q1',
310
- content: 'Question 1?',
311
- answers: ['A', 'B', 'C', 'D'],
312
- correctAnswerIndex: 0,
313
- answerExplanation: 'Answer A is correct.',
314
- },
315
- {
316
- id: 'q2',
317
- content: 'Question 2?',
318
- answers: ['X', 'Y', 'Z'],
319
- correctAnswerIndex: 1,
320
- answerExplanation: 'Answer Y is correct.',
321
- },
322
- {
323
- id: 'q3',
324
- content: 'Question 3?',
325
- answers: ['1', '2', '3', '4', '5'],
326
- correctAnswerIndex: 2,
327
- answerExplanation: 'Answer 3 is correct.',
328
- },
329
- ],
330
- },
331
- answers: {
332
- answers: [
333
- {
334
- questionId: 'q1',
335
- answerIndex: 0,
336
- },
337
- {
338
- questionId: 'q2',
339
- answerIndex: 1,
340
- },
341
- {
342
- questionId: 'q3',
343
- answerIndex: 2,
344
- },
345
- ],
346
- },
347
- };
348
- const result = AssignmentDtoSchema.safeParse(multiQuestionDto);
349
- expect(result.success).toBe(true);
350
- if (result.success) {
351
- expect(result.data.assignment.questions).toHaveLength(3);
352
- expect((_a = result.data.answers) === null || _a === void 0 ? void 0 : _a.answers).toHaveLength(3);
353
- expect(result.data.assignment.questions[0].id).toBe('q1');
354
- expect(result.data.assignment.questions[1].id).toBe('q2');
355
- expect(result.data.assignment.questions[2].id).toBe('q3');
356
- }
357
- });
358
- it('should handle special characters in content and explanations', () => {
359
- const specialCharDto = {
360
- ...validAssignmentDto,
361
- title: "José Assignment: O'Connor-Smith",
362
- prompt: 'This assignment contains special characters: émojis 🎓📚',
363
- assignment: {
364
- ...validAssignmentDto.assignment,
365
- questions: [
366
- {
367
- id: 'question-1',
368
- content: "What is José's favorite émoji? 🎓",
369
- answers: ['🎓', '📚', '✏️', '📝'],
370
- correctAnswerIndex: 0,
371
- answerExplanation: 'José loves the graduation cap émoji 🎓!',
372
- },
373
- ],
374
- },
375
- };
376
- const result = AssignmentDtoSchema.safeParse(specialCharDto);
377
- expect(result.success).toBe(true);
378
- if (result.success) {
379
- expect(result.data.title).toBe("José Assignment: O'Connor-Smith");
380
- expect(result.data.prompt).toBe('This assignment contains special characters: émojis 🎓📚');
381
- expect(result.data.assignment.questions[0].content).toBe("What is José's favorite émoji? 🎓");
382
- expect(result.data.assignment.questions[0].answerExplanation).toBe('José loves the graduation cap émoji 🎓!');
383
- }
384
- });
385
- it('should reject missing required fields', () => {
386
- const requiredFields = [
387
- 'id',
388
- 'accountId',
389
- 'createdByUserId',
390
- 'assigneeId',
391
- 'title',
392
- 'prompt',
393
- 'assignment',
394
- 'createdAt',
395
- 'updatedAt',
396
- ];
397
- requiredFields.forEach((field) => {
398
- const invalidDto = { ...validAssignmentDto };
399
- delete invalidDto[field];
400
- const result = AssignmentDtoSchema.safeParse(invalidDto);
401
- expect(result.success).toBe(false);
402
- if (!result.success) {
403
- expect(result.error.issues[0].path).toEqual([field]);
404
- expect(result.error.issues[0].code).toBe('invalid_type');
405
- }
406
- });
407
- });
408
- });
409
- });
410
- //# sourceMappingURL=assignment.dto.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"assignment.dto.spec.js","sourceRoot":"","sources":["../../src/tests/assignment.dto.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};