@proteinjs/db 1.0.25 → 1.0.26

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.
@@ -51,7 +51,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
51
51
  }
52
52
  };
53
53
  Object.defineProperty(exports, "__esModule", { value: true });
54
- exports.crudTests = exports.EmployeeTable = void 0;
54
+ exports.crudTests = exports.getTestTable = exports.EmployeeTable = void 0;
55
55
  var db_query_1 = require("@proteinjs/db-query");
56
56
  var Db_1 = require("../src/Db");
57
57
  var Record_1 = require("../src/Record");
@@ -65,6 +65,9 @@ var EmployeeTable = /** @class */ (function (_super) {
65
65
  _this.columns = (0, Record_1.withRecordColumns)({
66
66
  name: new Columns_1.StringColumn('name'),
67
67
  department: new Columns_1.StringColumn('department'),
68
+ isRemote: new Columns_1.BooleanColumn('is_remote'),
69
+ jobTitle: new Columns_1.StringColumn('job_title'),
70
+ startDate: new Columns_1.DateColumn('start_date'),
68
71
  object: new Columns_1.StringColumn('object'),
69
72
  });
70
73
  return _this;
@@ -72,16 +75,20 @@ var EmployeeTable = /** @class */ (function (_super) {
72
75
  return EmployeeTable;
73
76
  }(Table_1.Table));
74
77
  exports.EmployeeTable = EmployeeTable;
78
+ /**
79
+ * Used for testing purposes only.
80
+ * */
81
+ var getTestTable = function (tableName) {
82
+ var employeeTable = new EmployeeTable();
83
+ if (employeeTable.name == tableName) {
84
+ return employeeTable;
85
+ }
86
+ throw new Error("Cannot find test table: ".concat(tableName));
87
+ };
88
+ exports.getTestTable = getTestTable;
75
89
  var crudTests = function (driver, dropTable) {
76
90
  return function () {
77
- var getTable = function (tableName) {
78
- var employeeTable = new EmployeeTable();
79
- if (employeeTable.name == tableName) {
80
- return employeeTable;
81
- }
82
- throw new Error('Cannot find test table');
83
- };
84
- var db = new Db_1.Db(driver, getTable);
91
+ var db = new Db_1.Db(driver, exports.getTestTable);
85
92
  beforeAll(function () { return __awaiter(void 0, void 0, void 0, function () {
86
93
  return __generator(this, function (_a) {
87
94
  switch (_a.label) {
@@ -260,6 +267,245 @@ var crudTests = function (driver, dropTable) {
260
267
  }
261
268
  });
262
269
  }); });
270
+ test('Insert with null values', function () { return __awaiter(void 0, void 0, void 0, function () {
271
+ var testEmployee, emplyeeTable, insertedEmployee, fetchedEmployee;
272
+ return __generator(this, function (_a) {
273
+ switch (_a.label) {
274
+ case 0:
275
+ testEmployee = {
276
+ name: 'Veronica',
277
+ department: 'Cake Factory',
278
+ jobTitle: null,
279
+ isRemote: false,
280
+ };
281
+ emplyeeTable = new EmployeeTable();
282
+ return [4 /*yield*/, db.insert(emplyeeTable, testEmployee)];
283
+ case 1:
284
+ insertedEmployee = _a.sent();
285
+ return [4 /*yield*/, db.get(emplyeeTable, { id: insertedEmployee.id })];
286
+ case 2:
287
+ fetchedEmployee = _a.sent();
288
+ expect(fetchedEmployee).toBeTruthy();
289
+ expect(fetchedEmployee.jobTitle).toBeNull();
290
+ return [4 /*yield*/, db.delete(emplyeeTable, { id: fetchedEmployee.id })];
291
+ case 3:
292
+ _a.sent();
293
+ return [2 /*return*/];
294
+ }
295
+ });
296
+ }); });
297
+ test('Update with null values', function () { return __awaiter(void 0, void 0, void 0, function () {
298
+ var testEmployee, emplyeeTable, insertedEmployee, fetchedEmployee, nullUpdateCount;
299
+ return __generator(this, function (_a) {
300
+ switch (_a.label) {
301
+ case 0:
302
+ testEmployee = {
303
+ name: 'Cassidy',
304
+ jobTitle: 'Cowboy',
305
+ isRemote: false,
306
+ };
307
+ emplyeeTable = new EmployeeTable();
308
+ return [4 /*yield*/, db.insert(emplyeeTable, testEmployee)];
309
+ case 1:
310
+ insertedEmployee = _a.sent();
311
+ return [4 /*yield*/, db.get(emplyeeTable, { id: insertedEmployee.id })];
312
+ case 2:
313
+ fetchedEmployee = _a.sent();
314
+ expect(fetchedEmployee).toBeTruthy();
315
+ return [4 /*yield*/, db.update(emplyeeTable, { jobTitle: null }, { id: insertedEmployee.id })];
316
+ case 3:
317
+ nullUpdateCount = _a.sent();
318
+ expect(nullUpdateCount).toBe(1);
319
+ return [4 /*yield*/, db.delete(emplyeeTable, { id: fetchedEmployee.id })];
320
+ case 4:
321
+ _a.sent();
322
+ return [2 /*return*/];
323
+ }
324
+ });
325
+ }); });
326
+ test('Query with null values', function () { return __awaiter(void 0, void 0, void 0, function () {
327
+ var testEmployee, emplyeeTable, insertedEmployee, qb, rows;
328
+ return __generator(this, function (_a) {
329
+ switch (_a.label) {
330
+ case 0:
331
+ testEmployee = {
332
+ name: 'Cassidy',
333
+ jobTitle: null,
334
+ isRemote: false,
335
+ };
336
+ emplyeeTable = new EmployeeTable();
337
+ return [4 /*yield*/, db.insert(emplyeeTable, testEmployee)];
338
+ case 1:
339
+ insertedEmployee = _a.sent();
340
+ qb = new db_query_1.QueryBuilder(emplyeeTable.name)
341
+ .condition({
342
+ field: 'jobTitle',
343
+ operator: 'IS NULL',
344
+ })
345
+ .condition({ field: 'id', operator: '=', value: insertedEmployee.id });
346
+ return [4 /*yield*/, db.query(emplyeeTable, qb)];
347
+ case 2:
348
+ rows = _a.sent();
349
+ expect(rows.length).toEqual(1);
350
+ return [4 /*yield*/, db.delete(emplyeeTable, { id: insertedEmployee.id })];
351
+ case 3:
352
+ _a.sent();
353
+ return [2 /*return*/];
354
+ }
355
+ });
356
+ }); });
357
+ test('Query with IN and NOT IN operators, including null values', function () { return __awaiter(void 0, void 0, void 0, function () {
358
+ var testEmployee1, testEmployee2, testEmployee3, emplyeeTable, insertedEmployee1, insertedEmployee2, insertedEmployee3, inQuery, inResults, notInQuery, notInResults, qb;
359
+ return __generator(this, function (_a) {
360
+ switch (_a.label) {
361
+ case 0:
362
+ testEmployee1 = { name: 'Veronica', jobTitle: 'Engineer' };
363
+ testEmployee2 = { name: 'Zenyatta', jobTitle: null };
364
+ testEmployee3 = { name: 'Cassidy', jobTitle: 'Cowboy' };
365
+ emplyeeTable = new EmployeeTable();
366
+ return [4 /*yield*/, db.insert(emplyeeTable, testEmployee1)];
367
+ case 1:
368
+ insertedEmployee1 = _a.sent();
369
+ return [4 /*yield*/, db.insert(emplyeeTable, testEmployee2)];
370
+ case 2:
371
+ insertedEmployee2 = _a.sent();
372
+ return [4 /*yield*/, db.insert(emplyeeTable, testEmployee3)];
373
+ case 3:
374
+ insertedEmployee3 = _a.sent();
375
+ inQuery = new db_query_1.QueryBuilder(emplyeeTable.name).condition({
376
+ field: 'jobTitle',
377
+ operator: 'IN',
378
+ value: ['Engineer', null],
379
+ });
380
+ return [4 /*yield*/, db.query(emplyeeTable, inQuery)];
381
+ case 4:
382
+ inResults = _a.sent();
383
+ expect(inResults.length).toBe(1);
384
+ expect(inResults.some(function (emp) { return emp.jobTitle === 'Engineer'; })).toBe(true);
385
+ notInQuery = new db_query_1.QueryBuilder(emplyeeTable.name).condition({
386
+ field: 'jobTitle',
387
+ operator: 'NOT IN',
388
+ value: ['Engineer', null],
389
+ });
390
+ return [4 /*yield*/, db.query(emplyeeTable, notInQuery)];
391
+ case 5:
392
+ notInResults = _a.sent();
393
+ expect(notInResults.length).toBe(0);
394
+ qb = new db_query_1.QueryBuilder(emplyeeTable.name).condition({
395
+ field: 'id',
396
+ operator: 'IN',
397
+ value: [insertedEmployee1.id, insertedEmployee2.id, insertedEmployee3.id],
398
+ });
399
+ return [4 /*yield*/, db.delete(emplyeeTable, qb)];
400
+ case 6:
401
+ _a.sent();
402
+ return [2 /*return*/];
403
+ }
404
+ });
405
+ }); });
406
+ test('Query with BETWEEN operator', function () { return __awaiter(void 0, void 0, void 0, function () {
407
+ var testEmployee1, testEmployee2, testEmployee3, employeeTable, insertedEmployee1, insertedEmployee2, insertedEmployee3, betweenQuery, betweenResults, qb;
408
+ return __generator(this, function (_a) {
409
+ switch (_a.label) {
410
+ case 0:
411
+ testEmployee1 = {
412
+ name: 'Veronica',
413
+ jobTitle: 'Engineer',
414
+ startDate: new Date('1997-10-24T00:00:00Z'),
415
+ };
416
+ testEmployee2 = {
417
+ name: 'Kiriko',
418
+ jobTitle: null,
419
+ startDate: new Date('2022-10-04T00:00:00Z'),
420
+ };
421
+ testEmployee3 = {
422
+ name: 'Cassidy',
423
+ jobTitle: 'Cowboy',
424
+ startDate: new Date('2016-05-24T00:00:00Z'),
425
+ };
426
+ employeeTable = new EmployeeTable();
427
+ return [4 /*yield*/, db.insert(employeeTable, testEmployee1)];
428
+ case 1:
429
+ insertedEmployee1 = _a.sent();
430
+ return [4 /*yield*/, db.insert(employeeTable, testEmployee2)];
431
+ case 2:
432
+ insertedEmployee2 = _a.sent();
433
+ return [4 /*yield*/, db.insert(employeeTable, testEmployee3)];
434
+ case 3:
435
+ insertedEmployee3 = _a.sent();
436
+ betweenQuery = new db_query_1.QueryBuilder(employeeTable.name).condition({
437
+ field: 'startDate',
438
+ operator: 'BETWEEN',
439
+ value: ['2000-06-05T00:00:00Z', '2024-06-05T00:00:00Z'],
440
+ });
441
+ return [4 /*yield*/, db.query(employeeTable, betweenQuery)];
442
+ case 4:
443
+ betweenResults = _a.sent();
444
+ expect(betweenResults.length).toBe(2);
445
+ expect(betweenResults.some(function (emp) { return emp.name === 'Kiriko'; })).toBe(true);
446
+ expect(betweenResults.some(function (emp) { return emp.name === 'Cassidy'; })).toBe(true);
447
+ qb = new db_query_1.QueryBuilder(employeeTable.name).condition({
448
+ field: 'id',
449
+ operator: 'IN',
450
+ value: [insertedEmployee1.id, insertedEmployee2.id, insertedEmployee3.id],
451
+ });
452
+ return [4 /*yield*/, db.delete(employeeTable, qb)];
453
+ case 5:
454
+ _a.sent();
455
+ return [2 /*return*/];
456
+ }
457
+ });
458
+ }); });
459
+ test('Query with sort', function () { return __awaiter(void 0, void 0, void 0, function () {
460
+ var testEmployee1, testEmployee2, testEmployee3, employeeTable, insertedEmployee1, insertedEmployee2, insertedEmployee3, sortQuery, sortResults, qb;
461
+ return __generator(this, function (_a) {
462
+ switch (_a.label) {
463
+ case 0:
464
+ testEmployee1 = {
465
+ name: 'Veronica',
466
+ jobTitle: 'Engineer',
467
+ };
468
+ testEmployee2 = {
469
+ name: 'Kiriko',
470
+ jobTitle: null,
471
+ };
472
+ testEmployee3 = {
473
+ name: 'Cassidy',
474
+ jobTitle: 'Cowboy',
475
+ };
476
+ employeeTable = new EmployeeTable();
477
+ return [4 /*yield*/, db.insert(employeeTable, testEmployee1)];
478
+ case 1:
479
+ insertedEmployee1 = _a.sent();
480
+ return [4 /*yield*/, db.insert(employeeTable, testEmployee2)];
481
+ case 2:
482
+ insertedEmployee2 = _a.sent();
483
+ return [4 /*yield*/, db.insert(employeeTable, testEmployee3)];
484
+ case 3:
485
+ insertedEmployee3 = _a.sent();
486
+ sortQuery = new db_query_1.QueryBuilder(employeeTable.name).sort([
487
+ { field: 'name', byValues: ['Cassidy', 'Veronica', 'Kiriko'] },
488
+ ]);
489
+ return [4 /*yield*/, db.query(employeeTable, sortQuery)];
490
+ case 4:
491
+ sortResults = _a.sent();
492
+ // Assertions
493
+ expect(sortResults.length).toBe(3);
494
+ expect(sortResults[0].name).toBe('Cassidy');
495
+ expect(sortResults[1].name).toBe('Veronica');
496
+ expect(sortResults[2].name).toBe('Kiriko');
497
+ qb = new db_query_1.QueryBuilder(employeeTable.name).condition({
498
+ field: 'id',
499
+ operator: 'IN',
500
+ value: [insertedEmployee1.id, insertedEmployee2.id, insertedEmployee3.id],
501
+ });
502
+ return [4 /*yield*/, db.delete(employeeTable, qb)];
503
+ case 5:
504
+ _a.sent();
505
+ return [2 /*return*/];
506
+ }
507
+ });
508
+ }); });
263
509
  };
264
510
  };
265
511
  exports.crudTests = crudTests;
@@ -1 +1 @@
1
- {"version":3,"file":"CrudTests.js","sourceRoot":"","sources":["../../test/CrudTests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CrudTests.js","sourceRoot":"","sources":["../../test/CrudTests.ts"],"names":[],"mappings":"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"}