@skuba-lib/vitest-koa-mocks 2.0.0-vitest-koa-mocks-20251204040209 → 2.0.0-vitest-koa-mocks-20251204040851
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/lib/createMockContext/createMockContext.js +12 -19
- package/lib/createMockContext/createMockContext.js.map +1 -1
- package/lib/createMockCookies/createMockCookies.js +4 -8
- package/lib/createMockCookies/createMockCookies.js.map +1 -1
- package/lib/index.js +2 -18
- package/lib/index.js.map +1 -1
- package/package.json +2 -1
|
@@ -1,17 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const node_mocks_http_1 = __importDefault(require("node-mocks-http"));
|
|
10
|
-
const vitest_1 = require("vitest");
|
|
11
|
-
const createMockCookies_js_1 = require("../createMockCookies/createMockCookies.js");
|
|
12
|
-
const createMockContext = (options = {}) => {
|
|
13
|
-
const app = new koa_1.default();
|
|
14
|
-
const { cookies, method, statusCode, session, requestBody, rawBody = '', url = '/', host = 'test.com', encrypted = false, throw: throwFn = vitest_1.vi.fn(), redirect = vitest_1.vi.fn(), headers = {}, state = {}, customProperties = {}, } = options;
|
|
1
|
+
import stream from 'stream';
|
|
2
|
+
import Koa from 'koa';
|
|
3
|
+
import httpMocks from 'node-mocks-http';
|
|
4
|
+
import { vi } from 'vitest';
|
|
5
|
+
import { createMockCookies, } from '../createMockCookies/createMockCookies.js';
|
|
6
|
+
export const createMockContext = (options = {}) => {
|
|
7
|
+
const app = new Koa();
|
|
8
|
+
const { cookies, method, statusCode, session, requestBody, rawBody = '', url = '/', host = 'test.com', encrypted = false, throw: throwFn = vi.fn(), redirect = vi.fn(), headers = {}, state = {}, customProperties = {}, } = options;
|
|
15
9
|
const extensions = {
|
|
16
10
|
...customProperties,
|
|
17
11
|
throw: throwFn,
|
|
@@ -28,27 +22,26 @@ const createMockContext = (options = {}) => {
|
|
|
28
22
|
if (!hasOriginHeader) {
|
|
29
23
|
requestHeaders.Origin = `${protocol}://${host}`;
|
|
30
24
|
}
|
|
31
|
-
const req =
|
|
25
|
+
const req = httpMocks.createRequest({
|
|
32
26
|
url,
|
|
33
27
|
method,
|
|
34
28
|
statusCode,
|
|
35
29
|
session,
|
|
36
30
|
headers: requestHeaders,
|
|
37
31
|
});
|
|
38
|
-
req.socket = new
|
|
32
|
+
req.socket = new stream.Duplex();
|
|
39
33
|
Object.defineProperty(req.socket, 'encrypted', {
|
|
40
34
|
writable: false,
|
|
41
35
|
value: encrypted,
|
|
42
36
|
});
|
|
43
|
-
const res =
|
|
37
|
+
const res = httpMocks.createResponse();
|
|
44
38
|
res.statusCode = 404;
|
|
45
39
|
res.set = undefined;
|
|
46
40
|
const context = app.createContext(req, res);
|
|
47
41
|
Object.assign(context, extensions);
|
|
48
|
-
context.cookies =
|
|
42
|
+
context.cookies = createMockCookies(cookies);
|
|
49
43
|
context.request.body = requestBody;
|
|
50
44
|
context.request.rawBody = rawBody;
|
|
51
45
|
return context;
|
|
52
46
|
};
|
|
53
|
-
exports.createMockContext = createMockContext;
|
|
54
47
|
//# sourceMappingURL=createMockContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createMockContext.js","sourceRoot":"","sources":["../../src/createMockContext/createMockContext.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createMockContext.js","sourceRoot":"","sources":["../../src/createMockContext/createMockContext.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,GAAqB,MAAM,KAAK,CAAC;AACxC,OAAO,SAAiC,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAEL,iBAAiB,GAClB,MAAM,2CAA2C,CAAC;AAiCnD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAI/B,UAAkD,EAAE,EACpD,EAAE;IACF,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IAEtB,MAAM,EACJ,OAAO,EACP,MAAM,EACN,UAAU,EACV,OAAO,EACP,WAAW,EACX,OAAO,GAAG,EAAE,EACZ,GAAG,GAAG,GAAG,EACT,IAAI,GAAG,UAAU,EACjB,SAAS,GAAG,KAAK,EACjB,KAAK,EAAE,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,EACxB,QAAQ,GAAG,EAAE,CAAC,EAAE,EAAE,EAClB,OAAO,GAAG,EAAE,EACZ,KAAK,GAAG,EAAE,EACV,gBAAgB,GAAG,EAAE,GACtB,GAAG,OAAO,CAAC;IAEZ,MAAM,UAAU,GAAG;QACjB,GAAG,gBAAgB;QACnB,KAAK,EAAE,OAAO;QACd,OAAO;QACP,QAAQ;QACR,KAAK;KACN,CAAC;IAIF,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IAC9C,MAAM,cAAc,GAA2B;QAE7C,IAAI,EAAE,IAAI;QACV,GAAG,OAAO;KACX,CAAC;IAGF,MAAM,eAAe,GACnB,QAAQ,IAAI,cAAc,IAAI,QAAQ,IAAI,cAAc,CAAC;IAC3D,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,cAAc,CAAC,MAAM,GAAG,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC;IAClD,CAAC;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,aAAa,CAAC;QAClC,GAAG;QACH,MAAM;QACN,UAAU;QACV,OAAO;QACP,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAKH,GAAG,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAS,CAAC;IACxC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE;QAC7C,QAAQ,EAAE,KAAK;QACf,KAAK,EAAE,SAAS;KACjB,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,SAAS,CAAC,cAAc,EAAE,CAAC;IAIvC,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;IAKrB,GAAG,CAAC,GAAG,GAAG,SAAgB,CAAC;IAG3B,MAAM,OAAO,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAU,CAC/B,CAAC;IACnB,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACnC,OAAO,CAAC,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAG7C,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,WAAW,CAAC;IACnC,OAAO,CAAC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;IAElC,OAAO,OAAsB,CAAC;AAChC,CAAC,CAAC"}
|
|
@@ -1,18 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.createMockCookies = void 0;
|
|
4
|
-
const vitest_1 = require("vitest");
|
|
5
|
-
const createMockCookies = (cookies = {}, secure = true) => {
|
|
1
|
+
import { vi } from 'vitest';
|
|
2
|
+
export const createMockCookies = (cookies = {}, secure = true) => {
|
|
6
3
|
const cookieEntries = Object.keys(cookies).map((key) => [key, cookies[key]]);
|
|
7
4
|
const requestStore = new Map(cookieEntries);
|
|
8
5
|
const responseStore = new Map(cookieEntries);
|
|
9
6
|
return {
|
|
10
|
-
set:
|
|
11
|
-
get:
|
|
7
|
+
set: vi.fn((key, value) => responseStore.set(key, value)),
|
|
8
|
+
get: vi.fn((key) => requestStore.get(key)),
|
|
12
9
|
requestStore,
|
|
13
10
|
responseStore,
|
|
14
11
|
secure,
|
|
15
12
|
};
|
|
16
13
|
};
|
|
17
|
-
exports.createMockCookies = createMockCookies;
|
|
18
14
|
//# sourceMappingURL=createMockCookies.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createMockCookies.js","sourceRoot":"","sources":["../../src/createMockCookies/createMockCookies.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createMockCookies.js","sourceRoot":"","sources":["../../src/createMockCookies/createMockCookies.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAS5B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,UAAkC,EAAE,EACpC,MAAM,GAAG,IAAI,EACA,EAAE;IACf,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAC5C,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAqB,CACjD,CAAC;IAEF,MAAM,YAAY,GAAG,IAAI,GAAG,CAAiB,aAAa,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAiB,aAAa,CAAC,CAAC;IAE7D,OAAO;QACL,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,GAAW,EAAE,KAAa,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClD,YAAY;QACZ,aAAa;QACb,MAAM;KACmB,CAAC;AAC9B,CAAC,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -1,19 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./createMockContext/createMockContext.js"), exports);
|
|
18
|
-
__exportStar(require("./createMockCookies/createMockCookies.js"), exports);
|
|
1
|
+
export * from './createMockContext/createMockContext.js';
|
|
2
|
+
export * from './createMockCookies/createMockCookies.js';
|
|
19
3
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0CAA0C,CAAC;AACzD,cAAc,0CAA0C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skuba-lib/vitest-koa-mocks",
|
|
3
|
-
"version": "2.0.0-vitest-koa-mocks-
|
|
3
|
+
"version": "2.0.0-vitest-koa-mocks-20251204040851",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Vitest mocks for Koa",
|
|
6
6
|
"homepage": "https://github.com/seek-oss/skuba/tree/main/packages/vitest-koa-mocks#readme",
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
},
|
|
14
14
|
"license": "MIT",
|
|
15
15
|
"sideEffects": true,
|
|
16
|
+
"type": "module",
|
|
16
17
|
"main": "./lib/index.js",
|
|
17
18
|
"module": "./lib/index.js",
|
|
18
19
|
"types": "./lib/index.d.ts",
|