@opra/testing 0.0.9 → 0.0.12

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.
Files changed (44) hide show
  1. package/cjs/expect/api-expect-fail.js +15 -0
  2. package/cjs/expect/api-expect-list.js +104 -6
  3. package/cjs/expect/{api-expect-resource.js → api-expect-object.js} +4 -4
  4. package/cjs/expect/api-expect.js +24 -19
  5. package/cjs/testers/base-operation-tester.js +16 -0
  6. package/cjs/testers/entity-create-tester.js +16 -16
  7. package/cjs/testers/entity-delete-many-tester.js +23 -0
  8. package/cjs/testers/entity-delete-tester.js +22 -0
  9. package/cjs/testers/entity-get-tester.js +17 -17
  10. package/cjs/testers/entity-search-tester.js +75 -0
  11. package/cjs/testers/entity-tester.js +46 -2
  12. package/cjs/testers/entity-update-many-tester.js +27 -0
  13. package/cjs/testers/entity-update-tester.js +44 -0
  14. package/esm/expect/api-expect-fail.d.ts +6 -0
  15. package/esm/expect/api-expect-fail.js +11 -0
  16. package/esm/expect/api-expect-list.d.ts +9 -2
  17. package/esm/expect/api-expect-list.js +101 -5
  18. package/esm/expect/{api-expect-resource.d.ts → api-expect-object.d.ts} +2 -2
  19. package/esm/expect/{api-expect-resource.js → api-expect-object.js} +2 -2
  20. package/esm/expect/api-expect.d.ts +6 -9
  21. package/esm/expect/api-expect.js +24 -19
  22. package/esm/testers/base-operation-tester.d.ts +12 -0
  23. package/esm/testers/base-operation-tester.js +12 -0
  24. package/esm/testers/base-tester.d.ts +1 -1
  25. package/esm/testers/entity-create-tester.d.ts +3 -3
  26. package/esm/testers/entity-create-tester.js +16 -16
  27. package/esm/testers/entity-delete-many-tester.d.ts +12 -0
  28. package/esm/testers/entity-delete-many-tester.js +18 -0
  29. package/esm/testers/entity-delete-tester.d.ts +14 -0
  30. package/esm/testers/entity-delete-tester.js +17 -0
  31. package/esm/testers/entity-get-tester.d.ts +3 -3
  32. package/esm/testers/entity-get-tester.js +17 -17
  33. package/esm/testers/entity-search-tester.d.ts +22 -0
  34. package/esm/testers/entity-search-tester.js +70 -0
  35. package/esm/testers/entity-tester.d.ts +12 -2
  36. package/esm/testers/entity-tester.js +46 -2
  37. package/esm/testers/entity-update-many-tester.d.ts +14 -0
  38. package/esm/testers/entity-update-many-tester.js +22 -0
  39. package/esm/testers/entity-update-tester.d.ts +19 -0
  40. package/esm/testers/entity-update-tester.js +39 -0
  41. package/package.json +4 -3
  42. package/cjs/expect/api-expect-errors.js +0 -17
  43. package/esm/expect/api-expect-errors.d.ts +0 -6
  44. package/esm/expect/api-expect-errors.js +0 -13
@@ -0,0 +1,14 @@
1
+ import { Response } from 'supertest';
2
+ import { UpdateManyQueryOptions } from '@opra/core';
3
+ import { BaseOperationTester } from './base-operation-tester.js';
4
+ import type { OpraEntityTesterParams } from './entity-tester.js';
5
+ export declare type OpraEntityUpdateManyTesterParams = OpraEntityTesterParams & {
6
+ data: {};
7
+ options: UpdateManyQueryOptions;
8
+ };
9
+ export declare class OpraEntityUpdateManyTester extends BaseOperationTester {
10
+ protected readonly _params: OpraEntityUpdateManyTesterParams;
11
+ constructor(params: OpraEntityUpdateManyTesterParams);
12
+ data(data: {}): this;
13
+ protected _send(): Promise<Response>;
14
+ }
@@ -0,0 +1,22 @@
1
+ import request from 'supertest';
2
+ import { OpraURL } from '@opra/url';
3
+ import { BaseOperationTester } from './base-operation-tester.js';
4
+ export class OpraEntityUpdateManyTester extends BaseOperationTester {
5
+ constructor(params) {
6
+ super(params);
7
+ }
8
+ data(data) {
9
+ this._params.data = data;
10
+ return this;
11
+ }
12
+ async _send() {
13
+ const url = new OpraURL(this._params.path);
14
+ url.pathPrefix = this._params.prefix;
15
+ if (this._params.options.filter)
16
+ url.searchParams.set('$filter', this._params.options.filter);
17
+ const req = request(this._params.app);
18
+ const test = req.patch(url.toString());
19
+ this._prepare(test);
20
+ return test.send(this._params.data);
21
+ }
22
+ }
@@ -0,0 +1,19 @@
1
+ import { Response } from 'supertest';
2
+ import { UpdateQueryOptions } from '@opra/core';
3
+ import { ResourceKey } from '@opra/url';
4
+ import { BaseOperationTester } from './base-operation-tester.js';
5
+ import type { OpraEntityTesterParams } from './entity-tester.js';
6
+ export declare type OpraEntityUpdateTesterParams = OpraEntityTesterParams & {
7
+ keyValue: ResourceKey;
8
+ data: {};
9
+ options: UpdateQueryOptions;
10
+ };
11
+ export declare class OpraEntityUpdateTester extends BaseOperationTester {
12
+ protected readonly _params: OpraEntityUpdateTesterParams;
13
+ constructor(params: OpraEntityUpdateTesterParams);
14
+ data(data: {}): this;
15
+ omit(...fields: (string | string[])[]): this;
16
+ pick(...fields: (string | string[])[]): this;
17
+ include(...fields: (string | string[])[]): this;
18
+ protected _send(): Promise<Response>;
19
+ }
@@ -0,0 +1,39 @@
1
+ import request from 'supertest';
2
+ import { OpraURL } from '@opra/url';
3
+ import { BaseOperationTester } from './base-operation-tester.js';
4
+ export class OpraEntityUpdateTester extends BaseOperationTester {
5
+ constructor(params) {
6
+ super(params);
7
+ }
8
+ data(data) {
9
+ this._params.data = data;
10
+ return this;
11
+ }
12
+ omit(...fields) {
13
+ this._params.options.omit = fields.flat();
14
+ return this;
15
+ }
16
+ pick(...fields) {
17
+ this._params.options.pick = fields.flat();
18
+ return this;
19
+ }
20
+ include(...fields) {
21
+ this._params.options.include = fields.flat();
22
+ return this;
23
+ }
24
+ async _send() {
25
+ const url = new OpraURL(this._params.path);
26
+ url.pathPrefix = this._params.prefix;
27
+ url.path.get(url.path.size - 1).key = this._params.keyValue;
28
+ if (this._params.options.include)
29
+ url.searchParams.set('$include', this._params.options.include);
30
+ if (this._params.options.pick)
31
+ url.searchParams.set('$pick', this._params.options.pick);
32
+ if (this._params.options.omit)
33
+ url.searchParams.set('$omit', this._params.options.omit);
34
+ const req = request(this._params.app);
35
+ const test = req.patch(url.toString());
36
+ this._prepare(test);
37
+ return test.send(this._params.data);
38
+ }
39
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opra/testing",
3
- "version": "0.0.9",
3
+ "version": "0.0.12",
4
4
  "description": "Opra testing package",
5
5
  "author": "Panates",
6
6
  "license": "MIT",
@@ -25,9 +25,10 @@
25
25
  "clean:cover": "rimraf ../../coverage/testing"
26
26
  },
27
27
  "dependencies": {
28
- "@opra/core": "^0.0.9",
29
- "@opra/url": "^0.0.9",
28
+ "@opra/core": "^0.0.12",
29
+ "@opra/url": "^0.0.12",
30
30
  "lodash": "^4.17.21",
31
+ "rule-judgment": "^1.1.5",
31
32
  "supertest": "^6.2.4"
32
33
  },
33
34
  "devDependencies": {
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ApiExpectErrors = void 0;
4
- const api_expect_body_js_1 = require("./api-expect-body.js");
5
- class ApiExpectErrors extends api_expect_body_js_1.ApiExpectBody {
6
- _body;
7
- constructor(_body) {
8
- super();
9
- this._body = _body;
10
- }
11
- toBeDefined() {
12
- expect(this._body.errors).toBeDefined();
13
- expect(this._body.errors.length).toBeGreaterThan(0);
14
- return this;
15
- }
16
- }
17
- exports.ApiExpectErrors = ApiExpectErrors;
@@ -1,6 +0,0 @@
1
- import { ApiExpectBody } from './api-expect-body.js';
2
- export declare class ApiExpectErrors extends ApiExpectBody {
3
- protected _body: any;
4
- constructor(_body: any);
5
- toBeDefined(): this;
6
- }
@@ -1,13 +0,0 @@
1
- import { ApiExpectBody } from './api-expect-body.js';
2
- export class ApiExpectErrors extends ApiExpectBody {
3
- _body;
4
- constructor(_body) {
5
- super();
6
- this._body = _body;
7
- }
8
- toBeDefined() {
9
- expect(this._body.errors).toBeDefined();
10
- expect(this._body.errors.length).toBeGreaterThan(0);
11
- return this;
12
- }
13
- }