feathers-adapter-vitest 0.0.7 → 0.0.8

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/basic.js CHANGED
@@ -2,7 +2,7 @@ import assert from 'node:assert';
2
2
  import { describe, beforeEach } from 'vitest';
3
3
  export default (options) => {
4
4
  const { test, app, serviceName, idProp } = options;
5
- describe('Basic Functionality', () => {
5
+ describe('Basic', () => {
6
6
  let service;
7
7
  beforeEach(() => {
8
8
  service = app.service(serviceName);
package/dist/basic.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"basic.js","sourceRoot":"","sources":["../src/basic.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAwB7C,eAAe,CAAC,OAAyB,EAAE,EAAE;IAC3C,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IAElD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,IAAI,OAAY,CAAA;QAEhB,UAAU,CAAC,GAAG,EAAE;YACd,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QACpC,CAAC,CAAC,CAAA;QAEF,MAAM,MAAM,GAAoB;YAC9B,KAAK,EAAE,GAAG,EAAE;gBACV,MAAM,CAAC,WAAW,CAChB,OAAO,CAAC,EAAE,EACV,MAAM,EACN,qCAAqC,CACtC,CAAA;YACH,CAAC;YACD,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,0CAA0C,CAAC,CAAA;YACxE,CAAC;YACD,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,CAAC,EAAE,CACP,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAClC,8CAA8C,CAC/C,CAAA;YACH,CAAC;YACD,OAAO,EAAE,GAAG,EAAE;gBACZ,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;YACrD,CAAC;YACD,QAAQ,EAAE,GAAG,EAAE;gBACb,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;YACtD,CAAC;YACD,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;YACxD,CAAC;YACD,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;YACxD,CAAC;YACD,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;YACvD,CAAC;YACD,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;YACxD,CAAC;SACF,CAAA;QAED,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAE,MAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACzD,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"basic.js","sourceRoot":"","sources":["../src/basic.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAwB7C,eAAe,CAAC,OAAyB,EAAE,EAAE;IAC3C,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IAElD,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;QACrB,IAAI,OAAY,CAAA;QAEhB,UAAU,CAAC,GAAG,EAAE;YACd,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QACpC,CAAC,CAAC,CAAA;QAEF,MAAM,MAAM,GAAoB;YAC9B,KAAK,EAAE,GAAG,EAAE;gBACV,MAAM,CAAC,WAAW,CAChB,OAAO,CAAC,EAAE,EACV,MAAM,EACN,qCAAqC,CACtC,CAAA;YACH,CAAC;YACD,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,0CAA0C,CAAC,CAAA;YACxE,CAAC;YACD,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,CAAC,EAAE,CACP,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAClC,8CAA8C,CAC/C,CAAA;YACH,CAAC;YACD,OAAO,EAAE,GAAG,EAAE;gBACZ,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;YACrD,CAAC;YACD,QAAQ,EAAE,GAAG,EAAE;gBACb,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;YACtD,CAAC;YACD,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;YACxD,CAAC;YACD,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;YACxD,CAAC;YACD,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;YACvD,CAAC;YACD,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;YACxD,CAAC;SACF,CAAA;QAED,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAE,MAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACzD,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
package/dist/index.js CHANGED
@@ -1,12 +1,10 @@
1
1
  import basicTests from './basic.js';
2
2
  import methodTests from './methods.js';
3
3
  import syntaxTests from './syntax.js';
4
- import { describe, it, afterAll } from 'vitest';
4
+ import { describe, it } from 'vitest';
5
5
  export const defineTestSuite = (defineOptions) => {
6
6
  return (options) => {
7
7
  const { app, serviceName, idProp = 'id' } = options;
8
- const skippedTests = [];
9
- const allTests = [];
10
8
  const test = (name, runner) => {
11
9
  let skip = false;
12
10
  if (defineOptions?.blacklist?.includes(name)) {
@@ -16,19 +14,28 @@ export const defineTestSuite = (defineOptions) => {
16
14
  !defineOptions.only.includes(name)) {
17
15
  skip = true;
18
16
  }
19
- const its = skip ? it.skip : it;
20
- if (skip) {
21
- skippedTests.push(name);
22
- }
23
- allTests.push(name);
24
- its(name, runner);
17
+ const maybeSkip = skip ? it.skip : it;
18
+ maybeSkip(name, runner);
25
19
  };
26
- describe(`Adapter tests for '${serviceName}' service with '${idProp}' id property`, () => {
27
- afterAll(() => {
28
- if (skippedTests.length) {
29
- console.log(`\nSkipped the following ${skippedTests.length} Feathers adapter test(s) out of ${allTests.length} total:`);
30
- console.log(JSON.stringify(skippedTests, null, ' '));
31
- }
20
+ describe(`app.service('${serviceName}') with options.id: '${idProp}'`, () => {
21
+ beforeAll(async () => {
22
+ const service = app.service(serviceName);
23
+ // test create
24
+ const doug = await service.create({
25
+ name: 'Doug',
26
+ age: 32,
27
+ });
28
+ assert.ok(doug[idProp] !== null, `simple 'create' failed (no ${idProp}). Before you start to test the adapter make sure simple create works.`);
29
+ assert.strictEqual(doug.name, 'Doug', "simple 'create' failed (no name). Before you start to test the adapter make sure simple create works.");
30
+ assert.strictEqual(doug.age, 32, "simple 'create' failed (no age). Before you start to test the adapter make sure simple create works.");
31
+ // test delete
32
+ const items = await service.find({ paginate: false });
33
+ assert.ok(Array.isArray(items), 'find with paginate:false did not return an array. Before you start to test the adapter make sure simple find works.');
34
+ assert.strictEqual(items.length, 1, 'find should return an item. Before you start to test the adapter make sure simple find works.');
35
+ assert.ok(idProp in items[0], `'find' should return an item with ${idProp}. Before you start to test the adapter make sure simple find works.`);
36
+ await Promise.all(items.map((item) => service.remove(item[idProp])));
37
+ const itemsAfterRemove = await service.find({ paginate: false });
38
+ assert.ok(itemsAfterRemove.length === 0, "'remove' does not work. Before you start to test the adapter make sure simple remove works.");
32
39
  });
33
40
  basicTests({ test, app, serviceName, idProp });
34
41
  methodTests({ test, app, serviceName, idProp });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,WAAW,MAAM,cAAc,CAAA;AAEtC,OAAO,WAAW,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAuB/C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,aAAsC,EAAE,EAAE;IACxE,OAAO,CAAC,OAAyB,EAAE,EAAE;QACnC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,OAAO,CAAA;QAEnD,MAAM,YAAY,GAAsB,EAAE,CAAA;QAC1C,MAAM,QAAQ,GAAsB,EAAE,CAAA;QAEtC,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,MAAW,EAAE,EAAE;YACzC,IAAI,IAAI,GAAG,KAAK,CAAA;YAChB,IAAI,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAuB,CAAC,EAAE,CAAC;gBAChE,IAAI,GAAG,IAAI,CAAA;YACb,CAAC;YACD,IACE,aAAa,EAAE,IAAI,EAAE,MAAM;gBAC3B,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAuB,CAAC,EACrD,CAAC;gBACD,IAAI,GAAG,IAAI,CAAA;YACb,CAAC;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;YAE/B,IAAI,IAAI,EAAE,CAAC;gBACT,YAAY,CAAC,IAAI,CAAC,IAAuB,CAAC,CAAA;YAC5C,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,IAAuB,CAAC,CAAA;YAEtC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QACnB,CAAC,CAAA;QAED,QAAQ,CAAC,sBAAsB,WAAW,mBAAmB,MAAM,eAAe,EAAE,GAAG,EAAE;YACvF,QAAQ,CAAC,GAAG,EAAE;gBACZ,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;oBACxB,OAAO,CAAC,GAAG,CACT,2BAA2B,YAAY,CAAC,MAAM,oCAAoC,QAAQ,CAAC,MAAM,SAAS,CAC3G,CAAA;oBACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;gBACvD,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,UAAU,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAA;YAC9C,WAAW,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAA;YAC/C,WAAW,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;AACH,CAAC,CAAA;AAED,cAAc,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,WAAW,MAAM,cAAc,CAAA;AAEtC,OAAO,WAAW,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAuBrC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,aAAsC,EAAE,EAAE;IACxE,OAAO,CAAC,OAAyB,EAAE,EAAE;QACnC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,OAAO,CAAA;QAEnD,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,MAAW,EAAE,EAAE;YACzC,IAAI,IAAI,GAAG,KAAK,CAAA;YAChB,IAAI,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAuB,CAAC,EAAE,CAAC;gBAChE,IAAI,GAAG,IAAI,CAAA;YACb,CAAC;YACD,IACE,aAAa,EAAE,IAAI,EAAE,MAAM;gBAC3B,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAuB,CAAC,EACrD,CAAC;gBACD,IAAI,GAAG,IAAI,CAAA;YACb,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;YAErC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QACzB,CAAC,CAAA;QAED,QAAQ,CAAC,gBAAgB,WAAW,wBAAwB,MAAM,GAAG,EAAE,GAAG,EAAE;YAC1E,SAAS,CAAC,KAAK,IAAI,EAAE;gBACnB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;gBAExC,cAAc;gBACd,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC;oBAChC,IAAI,EAAE,MAAM;oBACZ,GAAG,EAAE,EAAE;iBACR,CAAC,CAAA;gBAEF,MAAM,CAAC,EAAE,CACP,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EACrB,8BAA8B,MAAM,wEAAwE,CAC7G,CAAA;gBACD,MAAM,CAAC,WAAW,CAChB,IAAI,CAAC,IAAI,EACT,MAAM,EACN,uGAAuG,CACxG,CAAA;gBACD,MAAM,CAAC,WAAW,CAChB,IAAI,CAAC,GAAG,EACR,EAAE,EACF,sGAAsG,CACvG,CAAA;gBAED,cAAc;gBAEd,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;gBACrD,MAAM,CAAC,EAAE,CACP,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EACpB,qHAAqH,CACtH,CAAA;gBACD,MAAM,CAAC,WAAW,CAChB,KAAK,CAAC,MAAM,EACZ,CAAC,EACD,+FAA+F,CAChG,CAAA;gBACD,MAAM,CAAC,EAAE,CACP,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,EAClB,qCAAqC,MAAM,qEAAqE,CACjH,CAAA;gBACD,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CACvD,CAAA;gBACD,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;gBAChE,MAAM,CAAC,EAAE,CACP,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAC7B,6FAA6F,CAC9F,CAAA;YACH,CAAC,CAAC,CAAA;YAEF,UAAU,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAA;YAC9C,WAAW,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAA;YAC/C,WAAW,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;AACH,CAAC,CAAA;AAED,cAAc,mBAAmB,CAAA"}
package/dist/methods.js CHANGED
@@ -8,22 +8,6 @@ export default (options) => {
8
8
  let service;
9
9
  beforeAll(async () => {
10
10
  service = app.service(serviceName);
11
- // test create
12
- doug = await service.create({
13
- name: 'Doug',
14
- age: 32,
15
- });
16
- assert.ok(doug[idProp] !== null, `simple 'create' failed (no ${idProp}). Before you start to test the adapter make sure simple create works.`);
17
- assert.strictEqual(doug.name, 'Doug', "simple 'create' failed (no name). Before you start to test the adapter make sure simple create works.");
18
- assert.strictEqual(doug.age, 32, "simple 'create' failed (no age). Before you start to test the adapter make sure simple create works.");
19
- // test delete
20
- const items = await service.find({ paginate: false });
21
- assert.ok(Array.isArray(items), 'find with paginate:false did not return an array. Before you start to test the adapter make sure simple find works.');
22
- assert.strictEqual(items.length, 1, 'find should return an item. Before you start to test the adapter make sure simple find works.');
23
- assert.ok(idProp in items[0], `'find' should return an item with ${idProp}. Before you start to test the adapter make sure simple find works.`);
24
- await Promise.all(items.map((item) => service.remove(item[idProp])));
25
- const itemsAfterRemove = await service.find({ paginate: false });
26
- assert.ok(itemsAfterRemove.length === 0, "'remove' does not work. Before you start to test the adapter make sure simple remove works.");
27
11
  });
28
12
  beforeEach(async () => {
29
13
  doug = await service.create({
@@ -1 +1 @@
1
- {"version":3,"file":"methods.js","sourceRoot":"","sources":["../src/methods.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"methods.js","sourceRoot":"","sources":["../src/methods.ts"],"names":[],"mappings":"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"}
package/dist/syntax.d.ts CHANGED
@@ -6,7 +6,6 @@ type SyntaxTestOptions = {
6
6
  serviceName: string;
7
7
  idProp: string;
8
8
  };
9
- export type AdapterTestNameSyntax = '.find + equal' | '.find + equal multiple' | '.find + $sort' | '.find + $sort + string' | '.find + $limit' | '.find + $limit 0' | '.find + $skip' | '.find + $select' | '.find + $or' | '.find + $in' | '.find + $nin' | '.find + $lt' | '.find + $lte' | '.find + $gt' | '.find + $gte' | '.find + $ne' | '.find + $gt + $lt + $sort' | '.find + $or nested + $sort' | '.find + $and' | '.find + $and + $or' | 'params.adapter + paginate' | 'params.adapter + multi' | '.find + paginate' | '.find + paginate + query' | '.find + paginate + $limit + $skip' | '.find + paginate + $limit 0' | '.find + paginate + params';
10
9
  type SyntaxTests = {
11
10
  general: '.find + equal' | '.find + equal multiple';
12
11
  filters: '.find + $sort' | '.find + $sort + string' | '.find + $limit' | '.find + $limit 0' | '.find + $skip' | '.find + $select';
@@ -14,6 +13,6 @@ type SyntaxTests = {
14
13
  'params.adapter': 'params.adapter + paginate' | 'params.adapter + multi';
15
14
  paginate: '.find + paginate' | '.find + paginate + query' | '.find + paginate + $limit + $skip' | '.find + paginate + $limit 0' | '.find + paginate + params';
16
15
  };
17
- export type AdapterMethodsTestName = SyntaxTests[keyof SyntaxTests];
16
+ export type AdapterTestNameSyntax = SyntaxTests[keyof SyntaxTests];
18
17
  declare const _default: (options: SyntaxTestOptions) => void;
19
18
  export default _default;
package/dist/syntax.js CHANGED
@@ -2,7 +2,7 @@ import assert from 'node:assert';
2
2
  import { describe, beforeEach, afterEach } from 'vitest';
3
3
  export default (options) => {
4
4
  const { test, app, serviceName, idProp } = options;
5
- describe('Query Syntax', () => {
5
+ describe('Syntax', () => {
6
6
  let bob;
7
7
  let alice;
8
8
  let doug;
@@ -31,15 +31,15 @@ export default (options) => {
31
31
  '.find + equal': async () => {
32
32
  const params = { query: { name: 'Alice' } };
33
33
  const data = await service.find(params);
34
- assert.ok(Array.isArray(data));
35
- assert.strictEqual(data.length, 1);
36
- assert.strictEqual(data[0].name, 'Alice');
34
+ assert.ok(Array.isArray(data), 'data is an array');
35
+ assert.strictEqual(data.length, 1, 'data has one entry');
36
+ assert.strictEqual(data[0].name, 'Alice', 'correct name');
37
37
  },
38
38
  '.find + equal multiple': async () => {
39
39
  const data = await service.find({
40
40
  query: { name: 'Alice', age: 20 },
41
41
  });
42
- assert.strictEqual(data.length, 0);
42
+ assert.strictEqual(data.length, 0, 'no results');
43
43
  },
44
44
  },
45
45
  filters: {
@@ -58,10 +58,10 @@ export default (options) => {
58
58
  $sort: { name: -1 },
59
59
  },
60
60
  });
61
- assert.strictEqual(data.length, 3);
62
- assert.strictEqual(data[0].name, 'Doug');
63
- assert.strictEqual(data[1].name, 'Bob');
64
- assert.strictEqual(data[2].name, 'Alice');
61
+ assert.strictEqual(data.length, 3, 'correct data.length');
62
+ assert.strictEqual(data[0].name, 'Doug', 'first item');
63
+ assert.strictEqual(data[1].name, 'Bob', 'second item');
64
+ assert.strictEqual(data[2].name, 'Alice', 'third item');
65
65
  },
66
66
  '.find + $sort + string': async () => {
67
67
  const data = await service.find({
@@ -69,10 +69,10 @@ export default (options) => {
69
69
  $sort: { name: '1' },
70
70
  },
71
71
  });
72
- assert.strictEqual(data.length, 3);
73
- assert.strictEqual(data[0].name, 'Alice');
74
- assert.strictEqual(data[1].name, 'Bob');
75
- assert.strictEqual(data[2].name, 'Doug');
72
+ assert.strictEqual(data.length, 3, 'correct data.length');
73
+ assert.strictEqual(data[0].name, 'Alice', 'first item');
74
+ assert.strictEqual(data[1].name, 'Bob', 'second item');
75
+ assert.strictEqual(data[2].name, 'Doug', 'third item');
76
76
  },
77
77
  '.find + $limit': async () => {
78
78
  const data = await service.find({
@@ -80,7 +80,7 @@ export default (options) => {
80
80
  $limit: 2,
81
81
  },
82
82
  });
83
- assert.strictEqual(data.length, 2);
83
+ assert.strictEqual(data.length, 2, 'correct data.length');
84
84
  },
85
85
  '.find + $limit 0': async () => {
86
86
  const data = await service.find({
@@ -88,7 +88,7 @@ export default (options) => {
88
88
  $limit: 0,
89
89
  },
90
90
  });
91
- assert.strictEqual(data.length, 0);
91
+ assert.strictEqual(data.length, 0, 'data array is empty');
92
92
  },
93
93
  '.find + $skip': async () => {
94
94
  const data = await service.find({
@@ -97,9 +97,9 @@ export default (options) => {
97
97
  $skip: 1,
98
98
  },
99
99
  });
100
- assert.strictEqual(data.length, 2);
101
- assert.strictEqual(data[0].name, 'Bob');
102
- assert.strictEqual(data[1].name, 'Doug');
100
+ assert.strictEqual(data.length, 2, 'correct data.length');
101
+ assert.strictEqual(data[0].name, 'Bob', 'first user');
102
+ assert.strictEqual(data[1].name, 'Doug', 'second user');
103
103
  },
104
104
  '.find + $select': async () => {
105
105
  const data = await service.find({
@@ -108,10 +108,10 @@ export default (options) => {
108
108
  $select: ['name'],
109
109
  },
110
110
  });
111
- assert.strictEqual(data.length, 1);
111
+ assert.strictEqual(data.length, 1, 'correct data.length');
112
112
  assert.ok(idProp in data[0], 'data has id');
113
- assert.strictEqual(data[0].name, 'Alice');
114
- assert.strictEqual(data[0].age, undefined);
113
+ assert.strictEqual(data[0].name, 'Alice', 'correct name');
114
+ assert.strictEqual(data[0].age, undefined, 'age was not selected');
115
115
  },
116
116
  },
117
117
  operators: {
@@ -122,9 +122,9 @@ export default (options) => {
122
122
  $sort: { name: 1 },
123
123
  },
124
124
  });
125
- assert.strictEqual(data.length, 2);
126
- assert.strictEqual(data[0].name, 'Alice');
127
- assert.strictEqual(data[1].name, 'Bob');
125
+ assert.strictEqual(data.length, 2, 'correct data.length');
126
+ assert.strictEqual(data[0].name, 'Alice', 'first item');
127
+ assert.strictEqual(data[1].name, 'Bob', 'second item');
128
128
  },
129
129
  '.find + $in': async () => {
130
130
  const data = await service.find({
@@ -135,9 +135,9 @@ export default (options) => {
135
135
  $sort: { name: 1 },
136
136
  },
137
137
  });
138
- assert.strictEqual(data.length, 2);
139
- assert.strictEqual(data[0].name, 'Alice');
140
- assert.strictEqual(data[1].name, 'Bob');
138
+ assert.strictEqual(data.length, 2, 'correct data.length');
139
+ assert.strictEqual(data[0].name, 'Alice', 'first item');
140
+ assert.strictEqual(data[1].name, 'Bob', 'second item');
141
141
  },
142
142
  '.find + $nin': async () => {
143
143
  const data = await service.find({
@@ -147,8 +147,8 @@ export default (options) => {
147
147
  },
148
148
  },
149
149
  });
150
- assert.strictEqual(data.length, 1);
151
- assert.strictEqual(data[0].name, 'Doug');
150
+ assert.strictEqual(data.length, 1, 'correct data.length');
151
+ assert.strictEqual(data[0].name, 'Doug', 'correct item');
152
152
  },
153
153
  '.find + $lt': async () => {
154
154
  const data = await service.find({
@@ -158,7 +158,7 @@ export default (options) => {
158
158
  },
159
159
  },
160
160
  });
161
- assert.strictEqual(data.length, 2);
161
+ assert.strictEqual(data.length, 2, 'correct data.length');
162
162
  },
163
163
  '.find + $lte': async () => {
164
164
  const data = await service.find({
@@ -168,7 +168,7 @@ export default (options) => {
168
168
  },
169
169
  },
170
170
  });
171
- assert.strictEqual(data.length, 2);
171
+ assert.strictEqual(data.length, 2, 'correct data.length');
172
172
  },
173
173
  '.find + $gt': async () => {
174
174
  const data = await service.find({
@@ -178,7 +178,7 @@ export default (options) => {
178
178
  },
179
179
  },
180
180
  });
181
- assert.strictEqual(data.length, 1);
181
+ assert.strictEqual(data.length, 1, 'correct data.length');
182
182
  },
183
183
  '.find + $gte': async () => {
184
184
  const data = await service.find({
@@ -188,7 +188,7 @@ export default (options) => {
188
188
  },
189
189
  },
190
190
  });
191
- assert.strictEqual(data.length, 2);
191
+ assert.strictEqual(data.length, 2, 'correct data.length');
192
192
  },
193
193
  '.find + $ne': async () => {
194
194
  const data = await service.find({
@@ -198,7 +198,7 @@ export default (options) => {
198
198
  },
199
199
  },
200
200
  });
201
- assert.strictEqual(data.length, 2, 'correct length');
201
+ assert.strictEqual(data.length, 2, 'correct data.length');
202
202
  },
203
203
  '.find + $gt + $lt + $sort': async () => {
204
204
  const params = {
@@ -211,7 +211,7 @@ export default (options) => {
211
211
  },
212
212
  };
213
213
  const data = await service.find(params);
214
- assert.strictEqual(data.length, 2, 'correct length');
214
+ assert.strictEqual(data.length, 2, 'correct data.length');
215
215
  assert.strictEqual(data[0].name, 'Alice', 'first user');
216
216
  assert.strictEqual(data[1].name, 'Bob', 'second user');
217
217
  },
@@ -231,7 +231,7 @@ export default (options) => {
231
231
  },
232
232
  };
233
233
  const data = await service.find(params);
234
- assert.strictEqual(data.length, 2, 'correct length');
234
+ assert.strictEqual(data.length, 2, 'correct data.length');
235
235
  assert.strictEqual(data[0].name, 'Alice', 'first user');
236
236
  assert.strictEqual(data[1].name, 'Doug', 'second user');
237
237
  },
@@ -243,7 +243,7 @@ export default (options) => {
243
243
  },
244
244
  };
245
245
  const data = await service.find(params);
246
- assert.strictEqual(data.length, 1, 'correct length');
246
+ assert.strictEqual(data.length, 1, 'correct data.length');
247
247
  assert.strictEqual(data[0].name, 'Alice', 'correct user');
248
248
  },
249
249
  '.find + $and + $or': async () => {
@@ -254,7 +254,7 @@ export default (options) => {
254
254
  },
255
255
  };
256
256
  const data = await service.find(params);
257
- assert.strictEqual(data.length, 1, 'correct length');
257
+ assert.strictEqual(data.length, 1, 'correct data.length');
258
258
  assert.strictEqual(data[0].name, 'Alice', 'correct user');
259
259
  },
260
260
  },
@@ -285,7 +285,7 @@ export default (options) => {
285
285
  },
286
286
  };
287
287
  const users = await service.create(items, multiParams);
288
- assert.strictEqual(users.length, 2);
288
+ assert.strictEqual(users.length, 2, 'created two items');
289
289
  await service.remove(users[0][idProp]);
290
290
  await service.remove(users[1][idProp]);
291
291
  await assert.rejects(() => service.patch(null, { age: 2 }, multiParams), {
@@ -1 +1 @@
1
- {"version":3,"file":"syntax.js","sourceRoot":"","sources":["../src/syntax.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"syntax.js","sourceRoot":"","sources":["../src/syntax.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "feathers-adapter-vitest",
3
- "version": "0.0.7",
3
+ "version": "0.0.8",
4
4
  "description": "Feathers shared database adapter test suite with vitest",
5
5
  "homepage": "https://feathersjs.com",
6
6
  "keywords": [
package/src/basic.ts CHANGED
@@ -26,7 +26,7 @@ type TestConfigBasic = Record<AdapterTestNameBasic, () => void | Promise<void>>
26
26
  export default (options: BasicTestOptions) => {
27
27
  const { test, app, serviceName, idProp } = options
28
28
 
29
- describe('Basic Functionality', () => {
29
+ describe('Basic', () => {
30
30
  let service: any
31
31
 
32
32
  beforeEach(() => {
package/src/index.ts CHANGED
@@ -5,7 +5,7 @@ import type { AdapterTestNameMethods } from './methods.js'
5
5
  import methodTests from './methods.js'
6
6
  import type { AdapterTestNameSyntax } from './syntax.js'
7
7
  import syntaxTests from './syntax.js'
8
- import { describe, it, afterAll } from 'vitest'
8
+ import { describe, it } from 'vitest'
9
9
 
10
10
  export type TestSuiteOptions = {
11
11
  app: Application
@@ -32,9 +32,6 @@ export const defineTestSuite = (defineOptions?: DefineTestSuiteOptions) => {
32
32
  return (options: TestSuiteOptions) => {
33
33
  const { app, serviceName, idProp = 'id' } = options
34
34
 
35
- const skippedTests: AdapterTestName[] = []
36
- const allTests: AdapterTestName[] = []
37
-
38
35
  const test = (name: string, runner: any) => {
39
36
  let skip = false
40
37
  if (defineOptions?.blacklist?.includes(name as AdapterTestName)) {
@@ -46,25 +43,60 @@ export const defineTestSuite = (defineOptions?: DefineTestSuiteOptions) => {
46
43
  ) {
47
44
  skip = true
48
45
  }
49
- const its = skip ? it.skip : it
46
+ const maybeSkip = skip ? it.skip : it
50
47
 
51
- if (skip) {
52
- skippedTests.push(name as AdapterTestName)
53
- }
48
+ maybeSkip(name, runner)
49
+ }
54
50
 
55
- allTests.push(name as AdapterTestName)
51
+ describe(`app.service('${serviceName}') with options.id: '${idProp}'`, () => {
52
+ beforeAll(async () => {
53
+ const service = app.service(serviceName)
56
54
 
57
- its(name, runner)
58
- }
55
+ // test create
56
+ const doug = await service.create({
57
+ name: 'Doug',
58
+ age: 32,
59
+ })
60
+
61
+ assert.ok(
62
+ doug[idProp] !== null,
63
+ `simple 'create' failed (no ${idProp}). Before you start to test the adapter make sure simple create works.`,
64
+ )
65
+ assert.strictEqual(
66
+ doug.name,
67
+ 'Doug',
68
+ "simple 'create' failed (no name). Before you start to test the adapter make sure simple create works.",
69
+ )
70
+ assert.strictEqual(
71
+ doug.age,
72
+ 32,
73
+ "simple 'create' failed (no age). Before you start to test the adapter make sure simple create works.",
74
+ )
75
+
76
+ // test delete
59
77
 
60
- describe(`Adapter tests for '${serviceName}' service with '${idProp}' id property`, () => {
61
- afterAll(() => {
62
- if (skippedTests.length) {
63
- console.log(
64
- `\nSkipped the following ${skippedTests.length} Feathers adapter test(s) out of ${allTests.length} total:`,
65
- )
66
- console.log(JSON.stringify(skippedTests, null, ' '))
67
- }
78
+ const items = await service.find({ paginate: false })
79
+ assert.ok(
80
+ Array.isArray(items),
81
+ 'find with paginate:false did not return an array. Before you start to test the adapter make sure simple find works.',
82
+ )
83
+ assert.strictEqual(
84
+ items.length,
85
+ 1,
86
+ 'find should return an item. Before you start to test the adapter make sure simple find works.',
87
+ )
88
+ assert.ok(
89
+ idProp in items[0],
90
+ `'find' should return an item with ${idProp}. Before you start to test the adapter make sure simple find works.`,
91
+ )
92
+ await Promise.all(
93
+ items.map((item: any) => service.remove(item[idProp])),
94
+ )
95
+ const itemsAfterRemove = await service.find({ paginate: false })
96
+ assert.ok(
97
+ itemsAfterRemove.length === 0,
98
+ "'remove' does not work. Before you start to test the adapter make sure simple remove works.",
99
+ )
68
100
  })
69
101
 
70
102
  basicTests({ test, app, serviceName, idProp })
package/src/methods.ts CHANGED
@@ -84,50 +84,6 @@ export default (options: MethodTestOptions) => {
84
84
 
85
85
  beforeAll(async () => {
86
86
  service = app.service(serviceName)
87
-
88
- // test create
89
- doug = await service.create({
90
- name: 'Doug',
91
- age: 32,
92
- })
93
-
94
- assert.ok(
95
- doug[idProp] !== null,
96
- `simple 'create' failed (no ${idProp}). Before you start to test the adapter make sure simple create works.`,
97
- )
98
- assert.strictEqual(
99
- doug.name,
100
- 'Doug',
101
- "simple 'create' failed (no name). Before you start to test the adapter make sure simple create works.",
102
- )
103
- assert.strictEqual(
104
- doug.age,
105
- 32,
106
- "simple 'create' failed (no age). Before you start to test the adapter make sure simple create works.",
107
- )
108
-
109
- // test delete
110
-
111
- const items = await service.find({ paginate: false })
112
- assert.ok(
113
- Array.isArray(items),
114
- 'find with paginate:false did not return an array. Before you start to test the adapter make sure simple find works.',
115
- )
116
- assert.strictEqual(
117
- items.length,
118
- 1,
119
- 'find should return an item. Before you start to test the adapter make sure simple find works.',
120
- )
121
- assert.ok(
122
- idProp in items[0],
123
- `'find' should return an item with ${idProp}. Before you start to test the adapter make sure simple find works.`,
124
- )
125
- await Promise.all(items.map((item: any) => service.remove(item[idProp])))
126
- const itemsAfterRemove = await service.find({ paginate: false })
127
- assert.ok(
128
- itemsAfterRemove.length === 0,
129
- "'remove' does not work. Before you start to test the adapter make sure simple remove works.",
130
- )
131
87
  })
132
88
 
133
89
  beforeEach(async () => {
package/src/syntax.ts CHANGED
@@ -10,35 +10,6 @@ type SyntaxTestOptions = {
10
10
  idProp: string
11
11
  }
12
12
 
13
- export type AdapterTestNameSyntax =
14
- | '.find + equal'
15
- | '.find + equal multiple'
16
- | '.find + $sort'
17
- | '.find + $sort + string'
18
- | '.find + $limit'
19
- | '.find + $limit 0'
20
- | '.find + $skip'
21
- | '.find + $select'
22
- | '.find + $or'
23
- | '.find + $in'
24
- | '.find + $nin'
25
- | '.find + $lt'
26
- | '.find + $lte'
27
- | '.find + $gt'
28
- | '.find + $gte'
29
- | '.find + $ne'
30
- | '.find + $gt + $lt + $sort'
31
- | '.find + $or nested + $sort'
32
- | '.find + $and'
33
- | '.find + $and + $or'
34
- | 'params.adapter + paginate'
35
- | 'params.adapter + multi'
36
- | '.find + paginate'
37
- | '.find + paginate + query'
38
- | '.find + paginate + $limit + $skip'
39
- | '.find + paginate + $limit 0'
40
- | '.find + paginate + params'
41
-
42
13
  type SyntaxTests = {
43
14
  general: '.find + equal' | '.find + equal multiple'
44
15
  filters:
@@ -71,7 +42,7 @@ type SyntaxTests = {
71
42
  | '.find + paginate + params'
72
43
  }
73
44
 
74
- export type AdapterMethodsTestName = SyntaxTests[keyof SyntaxTests]
45
+ export type AdapterTestNameSyntax = SyntaxTests[keyof SyntaxTests]
75
46
 
76
47
  type TestName<T extends keyof SyntaxTests> = SyntaxTests[T]
77
48
 
@@ -83,7 +54,7 @@ type TestConfig<T extends keyof SyntaxTests> = Record<
83
54
  export default (options: SyntaxTestOptions) => {
84
55
  const { test, app, serviceName, idProp } = options
85
56
 
86
- describe('Query Syntax', () => {
57
+ describe('Syntax', () => {
87
58
  let bob: any
88
59
  let alice: any
89
60
  let doug: any
@@ -117,16 +88,16 @@ export default (options: SyntaxTestOptions) => {
117
88
  const params = { query: { name: 'Alice' } }
118
89
  const data = await service.find(params)
119
90
 
120
- assert.ok(Array.isArray(data))
121
- assert.strictEqual(data.length, 1)
122
- assert.strictEqual(data[0].name, 'Alice')
91
+ assert.ok(Array.isArray(data), 'data is an array')
92
+ assert.strictEqual(data.length, 1, 'data has one entry')
93
+ assert.strictEqual(data[0].name, 'Alice', 'correct name')
123
94
  },
124
95
  '.find + equal multiple': async () => {
125
96
  const data = await service.find({
126
97
  query: { name: 'Alice', age: 20 },
127
98
  })
128
99
 
129
- assert.strictEqual(data.length, 0)
100
+ assert.strictEqual(data.length, 0, 'no results')
130
101
  },
131
102
  } satisfies TestConfig<'general'>,
132
103
  filters: {
@@ -148,10 +119,10 @@ export default (options: SyntaxTestOptions) => {
148
119
  },
149
120
  })
150
121
 
151
- assert.strictEqual(data.length, 3)
152
- assert.strictEqual(data[0].name, 'Doug')
153
- assert.strictEqual(data[1].name, 'Bob')
154
- assert.strictEqual(data[2].name, 'Alice')
122
+ assert.strictEqual(data.length, 3, 'correct data.length')
123
+ assert.strictEqual(data[0].name, 'Doug', 'first item')
124
+ assert.strictEqual(data[1].name, 'Bob', 'second item')
125
+ assert.strictEqual(data[2].name, 'Alice', 'third item')
155
126
  },
156
127
  '.find + $sort + string': async () => {
157
128
  const data = await service.find({
@@ -160,10 +131,10 @@ export default (options: SyntaxTestOptions) => {
160
131
  },
161
132
  })
162
133
 
163
- assert.strictEqual(data.length, 3)
164
- assert.strictEqual(data[0].name, 'Alice')
165
- assert.strictEqual(data[1].name, 'Bob')
166
- assert.strictEqual(data[2].name, 'Doug')
134
+ assert.strictEqual(data.length, 3, 'correct data.length')
135
+ assert.strictEqual(data[0].name, 'Alice', 'first item')
136
+ assert.strictEqual(data[1].name, 'Bob', 'second item')
137
+ assert.strictEqual(data[2].name, 'Doug', 'third item')
167
138
  },
168
139
  '.find + $limit': async () => {
169
140
  const data = await service.find({
@@ -172,7 +143,7 @@ export default (options: SyntaxTestOptions) => {
172
143
  },
173
144
  })
174
145
 
175
- assert.strictEqual(data.length, 2)
146
+ assert.strictEqual(data.length, 2, 'correct data.length')
176
147
  },
177
148
  '.find + $limit 0': async () => {
178
149
  const data = await service.find({
@@ -181,7 +152,7 @@ export default (options: SyntaxTestOptions) => {
181
152
  },
182
153
  })
183
154
 
184
- assert.strictEqual(data.length, 0)
155
+ assert.strictEqual(data.length, 0, 'data array is empty')
185
156
  },
186
157
  '.find + $skip': async () => {
187
158
  const data = await service.find({
@@ -191,9 +162,9 @@ export default (options: SyntaxTestOptions) => {
191
162
  },
192
163
  })
193
164
 
194
- assert.strictEqual(data.length, 2)
195
- assert.strictEqual(data[0].name, 'Bob')
196
- assert.strictEqual(data[1].name, 'Doug')
165
+ assert.strictEqual(data.length, 2, 'correct data.length')
166
+ assert.strictEqual(data[0].name, 'Bob', 'first user')
167
+ assert.strictEqual(data[1].name, 'Doug', 'second user')
197
168
  },
198
169
  '.find + $select': async () => {
199
170
  const data = await service.find({
@@ -203,10 +174,10 @@ export default (options: SyntaxTestOptions) => {
203
174
  },
204
175
  })
205
176
 
206
- assert.strictEqual(data.length, 1)
177
+ assert.strictEqual(data.length, 1, 'correct data.length')
207
178
  assert.ok(idProp in data[0], 'data has id')
208
- assert.strictEqual(data[0].name, 'Alice')
209
- assert.strictEqual(data[0].age, undefined)
179
+ assert.strictEqual(data[0].name, 'Alice', 'correct name')
180
+ assert.strictEqual(data[0].age, undefined, 'age was not selected')
210
181
  },
211
182
  } satisfies TestConfig<'filters'>,
212
183
  operators: {
@@ -218,9 +189,9 @@ export default (options: SyntaxTestOptions) => {
218
189
  },
219
190
  })
220
191
 
221
- assert.strictEqual(data.length, 2)
222
- assert.strictEqual(data[0].name, 'Alice')
223
- assert.strictEqual(data[1].name, 'Bob')
192
+ assert.strictEqual(data.length, 2, 'correct data.length')
193
+ assert.strictEqual(data[0].name, 'Alice', 'first item')
194
+ assert.strictEqual(data[1].name, 'Bob', 'second item')
224
195
  },
225
196
  '.find + $in': async () => {
226
197
  const data = await service.find({
@@ -232,9 +203,9 @@ export default (options: SyntaxTestOptions) => {
232
203
  },
233
204
  })
234
205
 
235
- assert.strictEqual(data.length, 2)
236
- assert.strictEqual(data[0].name, 'Alice')
237
- assert.strictEqual(data[1].name, 'Bob')
206
+ assert.strictEqual(data.length, 2, 'correct data.length')
207
+ assert.strictEqual(data[0].name, 'Alice', 'first item')
208
+ assert.strictEqual(data[1].name, 'Bob', 'second item')
238
209
  },
239
210
  '.find + $nin': async () => {
240
211
  const data = await service.find({
@@ -245,8 +216,8 @@ export default (options: SyntaxTestOptions) => {
245
216
  },
246
217
  })
247
218
 
248
- assert.strictEqual(data.length, 1)
249
- assert.strictEqual(data[0].name, 'Doug')
219
+ assert.strictEqual(data.length, 1, 'correct data.length')
220
+ assert.strictEqual(data[0].name, 'Doug', 'correct item')
250
221
  },
251
222
  '.find + $lt': async () => {
252
223
  const data = await service.find({
@@ -257,7 +228,7 @@ export default (options: SyntaxTestOptions) => {
257
228
  },
258
229
  })
259
230
 
260
- assert.strictEqual(data.length, 2)
231
+ assert.strictEqual(data.length, 2, 'correct data.length')
261
232
  },
262
233
  '.find + $lte': async () => {
263
234
  const data = await service.find({
@@ -268,7 +239,7 @@ export default (options: SyntaxTestOptions) => {
268
239
  },
269
240
  })
270
241
 
271
- assert.strictEqual(data.length, 2)
242
+ assert.strictEqual(data.length, 2, 'correct data.length')
272
243
  },
273
244
  '.find + $gt': async () => {
274
245
  const data = await service.find({
@@ -279,7 +250,7 @@ export default (options: SyntaxTestOptions) => {
279
250
  },
280
251
  })
281
252
 
282
- assert.strictEqual(data.length, 1)
253
+ assert.strictEqual(data.length, 1, 'correct data.length')
283
254
  },
284
255
  '.find + $gte': async () => {
285
256
  const data = await service.find({
@@ -290,7 +261,7 @@ export default (options: SyntaxTestOptions) => {
290
261
  },
291
262
  })
292
263
 
293
- assert.strictEqual(data.length, 2)
264
+ assert.strictEqual(data.length, 2, 'correct data.length')
294
265
  },
295
266
  '.find + $ne': async () => {
296
267
  const data = await service.find({
@@ -301,7 +272,7 @@ export default (options: SyntaxTestOptions) => {
301
272
  },
302
273
  })
303
274
 
304
- assert.strictEqual(data.length, 2, 'correct length')
275
+ assert.strictEqual(data.length, 2, 'correct data.length')
305
276
  },
306
277
  '.find + $gt + $lt + $sort': async () => {
307
278
  const params = {
@@ -316,7 +287,7 @@ export default (options: SyntaxTestOptions) => {
316
287
 
317
288
  const data = await service.find(params)
318
289
 
319
- assert.strictEqual(data.length, 2, 'correct length')
290
+ assert.strictEqual(data.length, 2, 'correct data.length')
320
291
  assert.strictEqual(data[0].name, 'Alice', 'first user')
321
292
  assert.strictEqual(data[1].name, 'Bob', 'second user')
322
293
  },
@@ -338,7 +309,7 @@ export default (options: SyntaxTestOptions) => {
338
309
 
339
310
  const data = await service.find(params)
340
311
 
341
- assert.strictEqual(data.length, 2, 'correct length')
312
+ assert.strictEqual(data.length, 2, 'correct data.length')
342
313
  assert.strictEqual(data[0].name, 'Alice', 'first user')
343
314
  assert.strictEqual(data[1].name, 'Doug', 'second user')
344
315
  },
@@ -352,7 +323,7 @@ export default (options: SyntaxTestOptions) => {
352
323
 
353
324
  const data = await service.find(params)
354
325
 
355
- assert.strictEqual(data.length, 1, 'correct length')
326
+ assert.strictEqual(data.length, 1, 'correct data.length')
356
327
  assert.strictEqual(data[0].name, 'Alice', 'correct user')
357
328
  },
358
329
  '.find + $and + $or': async () => {
@@ -365,7 +336,7 @@ export default (options: SyntaxTestOptions) => {
365
336
 
366
337
  const data = await service.find(params)
367
338
 
368
- assert.strictEqual(data.length, 1, 'correct length')
339
+ assert.strictEqual(data.length, 1, 'correct data.length')
369
340
  assert.strictEqual(data[0].name, 'Alice', 'correct user')
370
341
  },
371
342
  } satisfies TestConfig<'operators'>,
@@ -398,7 +369,7 @@ export default (options: SyntaxTestOptions) => {
398
369
  }
399
370
  const users = await service.create(items, multiParams)
400
371
 
401
- assert.strictEqual(users.length, 2)
372
+ assert.strictEqual(users.length, 2, 'created two items')
402
373
 
403
374
  await service.remove(users[0][idProp])
404
375
  await service.remove(users[1][idProp])