@leyyo/http-mock 1.1.1

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 (39) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +8 -0
  3. package/dist/application/index.d.ts +1 -0
  4. package/dist/application/index.js +18 -0
  5. package/dist/application/index.js.map +1 -0
  6. package/dist/application/mock-application.d.ts +70 -0
  7. package/dist/application/mock-application.js +120 -0
  8. package/dist/application/mock-application.js.map +1 -0
  9. package/dist/http-mock.d.ts +10 -0
  10. package/dist/http-mock.js +20 -0
  11. package/dist/http-mock.js.map +1 -0
  12. package/dist/index.d.ts +1 -0
  13. package/dist/index.js +18 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/internal-component.d.ts +3 -0
  16. package/dist/internal-component.js +8 -0
  17. package/dist/internal-component.js.map +1 -0
  18. package/dist/request/index-types.d.ts +20 -0
  19. package/dist/request/index-types.js +3 -0
  20. package/dist/request/index-types.js.map +1 -0
  21. package/dist/request/index.d.ts +2 -0
  22. package/dist/request/index.js +19 -0
  23. package/dist/request/index.js.map +1 -0
  24. package/dist/request/mock-request.d.ts +121 -0
  25. package/dist/request/mock-request.js +229 -0
  26. package/dist/request/mock-request.js.map +1 -0
  27. package/dist/response/index-types.d.ts +21 -0
  28. package/dist/response/index-types.js +3 -0
  29. package/dist/response/index-types.js.map +1 -0
  30. package/dist/response/index.d.ts +2 -0
  31. package/dist/response/index.js +19 -0
  32. package/dist/response/index.js.map +1 -0
  33. package/dist/response/mock-response.d.ts +119 -0
  34. package/dist/response/mock-response.js +332 -0
  35. package/dist/response/mock-response.js.map +1 -0
  36. package/dist/server.d.ts +0 -0
  37. package/dist/server.js +2 -0
  38. package/dist/server.js.map +1 -0
  39. package/package.json +63 -0
@@ -0,0 +1,229 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MockRequest = void 0;
13
+ const core_1 = require("@leyyo/core");
14
+ const fqn_1 = require("@leyyo/fqn");
15
+ const internal_component_1 = require("../internal-component");
16
+ const application_1 = require("../application");
17
+ // noinspection JSUnusedGlobalSymbols
18
+ let MockRequest = class MockRequest {
19
+ constructor(service, origin, custom) {
20
+ var _a, _b;
21
+ if (!core_1.leyyo.is.object(service)) {
22
+ service = {
23
+ method: core_1.HttpMethod.GET,
24
+ url: '/',
25
+ body: {},
26
+ headers: {},
27
+ cookies: {},
28
+ signedCookies: {}
29
+ };
30
+ }
31
+ this.isFake = true;
32
+ this.method = (_a = service === null || service === void 0 ? void 0 : service.method) !== null && _a !== void 0 ? _a : core_1.HttpMethod.GET;
33
+ this.url = (_b = service === null || service === void 0 ? void 0 : service.url) !== null && _b !== void 0 ? _b : '';
34
+ this.body = service === null || service === void 0 ? void 0 : service.body;
35
+ this.headers = core_1.leyyo.is.object(service === null || service === void 0 ? void 0 : service.headers) ? service.headers : {};
36
+ this.cookies = core_1.leyyo.is.object(service === null || service === void 0 ? void 0 : service.cookies) ? service.cookies : {};
37
+ this.signedCookies = core_1.leyyo.is.object(service === null || service === void 0 ? void 0 : service.signedCookies) ? service.signedCookies : {};
38
+ if (!(origin === null || origin === void 0 ? void 0 : origin.app)) {
39
+ this.app = new application_1.MockApplication();
40
+ }
41
+ else {
42
+ this.app = origin.app;
43
+ }
44
+ if (origin) {
45
+ for (const [prop, value] of Object.entries(origin)) {
46
+ switch (prop) {
47
+ case 'method':
48
+ case 'url':
49
+ case 'body':
50
+ break;
51
+ case 'headers':
52
+ case 'cookies':
53
+ case 'signedCookies':
54
+ if (core_1.leyyo.is.object(value)) {
55
+ for (const [k, v] of Object.entries(value)) {
56
+ if (this[prop][k] === undefined) {
57
+ this[prop][k] = v;
58
+ }
59
+ }
60
+ }
61
+ break;
62
+ default:
63
+ switch (typeof value) {
64
+ case "symbol":
65
+ case "bigint":
66
+ case "number":
67
+ case "string":
68
+ case "boolean":
69
+ this[prop] = value;
70
+ break;
71
+ case "object":
72
+ if (core_1.leyyo.is.array(value, true)) {
73
+ this[prop] = [...value];
74
+ }
75
+ else if (core_1.leyyo.is.object(value, true)) {
76
+ this[prop] = Object.assign({}, value);
77
+ }
78
+ break;
79
+ }
80
+ break;
81
+ }
82
+ }
83
+ }
84
+ if (!this.route) {
85
+ this.route = {
86
+ path: this.path,
87
+ stack: [],
88
+ methods: { [this.method]: true, },
89
+ };
90
+ }
91
+ if (core_1.leyyo.is.object(custom)) {
92
+ for (const [key, value] of Object.entries(custom)) {
93
+ if (typeof this[key] !== undefined) {
94
+ LOG.warn('request.forbidden.custom', { key, actual: typeof value });
95
+ }
96
+ else {
97
+ this[key] = value;
98
+ }
99
+ }
100
+ }
101
+ }
102
+ [Symbol.asyncIterator]() {
103
+ throw new Error("Method not implemented.");
104
+ }
105
+ _construct(callback) {
106
+ (0, core_1.emptyFn)();
107
+ }
108
+ _destroy(error, callback) {
109
+ (0, core_1.emptyFn)();
110
+ }
111
+ _read(size) {
112
+ (0, core_1.emptyFn)();
113
+ }
114
+ destroy(error) {
115
+ return this;
116
+ }
117
+ read(size) {
118
+ return undefined;
119
+ }
120
+ push(chunk, encoding) {
121
+ return false;
122
+ }
123
+ isPaused() {
124
+ return false;
125
+ }
126
+ resume() {
127
+ return this;
128
+ }
129
+ setEncoding(encoding) {
130
+ return this;
131
+ }
132
+ setTimeout(msecs, callback) {
133
+ return this;
134
+ }
135
+ unpipe(destination) {
136
+ return this;
137
+ }
138
+ unshift(chunk, encoding) {
139
+ (0, core_1.emptyFn)();
140
+ }
141
+ wrap(stream) {
142
+ return undefined;
143
+ }
144
+ accepts(...type) {
145
+ return false;
146
+ }
147
+ acceptsCharsets(...charset) {
148
+ return false;
149
+ }
150
+ acceptsEncodings(...encoding) {
151
+ return false;
152
+ }
153
+ acceptsLanguages(...lang) {
154
+ return false;
155
+ }
156
+ addListener(eventName, listener) {
157
+ return this;
158
+ }
159
+ emit(eventName, ...args) {
160
+ return false;
161
+ }
162
+ eventNames() {
163
+ return [];
164
+ }
165
+ get(name) {
166
+ return this.header(name);
167
+ }
168
+ getMaxListeners() {
169
+ return 0;
170
+ }
171
+ header(name) {
172
+ return (typeof name === 'string') ? this.headers[name] : undefined;
173
+ }
174
+ is(type) {
175
+ return undefined;
176
+ }
177
+ listenerCount(eventName) {
178
+ return 0;
179
+ }
180
+ listeners(eventName) {
181
+ return [];
182
+ }
183
+ off(eventName, listener) {
184
+ return this;
185
+ }
186
+ on(eventName, listener) {
187
+ return this;
188
+ }
189
+ once(eventName, listener) {
190
+ return this;
191
+ }
192
+ param(name, defaultValue) {
193
+ return (typeof name === 'string') ? this.params[name] : undefined;
194
+ }
195
+ pause() {
196
+ return this;
197
+ }
198
+ pipe(destination, options) {
199
+ return destination;
200
+ }
201
+ prependListener(eventName, listener) {
202
+ return this;
203
+ }
204
+ prependOnceListener(eventName, listener) {
205
+ return this;
206
+ }
207
+ range(size, options) {
208
+ return undefined;
209
+ }
210
+ rawListeners(eventName) {
211
+ return [];
212
+ }
213
+ removeAllListeners(event) {
214
+ return this;
215
+ }
216
+ removeListener(eventName, listener) {
217
+ return this;
218
+ }
219
+ setMaxListeners(n) {
220
+ return this;
221
+ }
222
+ };
223
+ MockRequest = __decorate([
224
+ (0, fqn_1.Fqn)(...internal_component_1.FQN_NAME),
225
+ __metadata("design:paramtypes", [Object, Object, Object])
226
+ ], MockRequest);
227
+ exports.MockRequest = MockRequest;
228
+ const LOG = core_1.logger.assign(MockRequest);
229
+ //# sourceMappingURL=mock-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-request.js","sourceRoot":"","sources":["../../src/request/mock-request.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { ArraySome, OneOrMore, Primitive, RecLike } from "@leyyo/core";
2
+ import { CookieOptions, Response } from "express";
3
+ export declare type ResponseData = ArraySome | RecLike | string | number | boolean | unknown;
4
+ export declare type ResponseErrorCallback = (error?: Error) => void;
5
+ export interface MockServicePreparedResponse {
6
+ status: number;
7
+ statusMessage: string;
8
+ headers: RecLike<OneOrMore<string>>;
9
+ cookies: RecLike<ResponseCookie>;
10
+ clearedCookies: RecLike<CookieOptions>;
11
+ data: ResponseData;
12
+ locals: RecLike;
13
+ }
14
+ export declare type MockResponseResolve = (dto: MockServicePreparedResponse) => void;
15
+ export interface ResponseCookie {
16
+ value: Primitive;
17
+ opt: CookieOptions;
18
+ }
19
+ export interface MockResponseLike<D = ResponseData, L = RecLike> extends Response<D, L> {
20
+ isFake: boolean;
21
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-types.js","sourceRoot":"","sources":["../../src/response/index-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from './index-types';
2
+ export * from './mock-response';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
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("./index-types"), exports);
18
+ __exportStar(require("./mock-response"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/response/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,kDAAgC"}
@@ -0,0 +1,119 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /// <reference types="node" />
4
+ import { Application, CookieOptions, Errback, Request, Response } from "express";
5
+ import { RecLike, OneOrMore, FuncLike, Key } from "@leyyo/core";
6
+ import { OutgoingHttpHeader, OutgoingHttpHeaders } from "http";
7
+ import { Socket } from "net";
8
+ import { MockResponseLike, MockResponseResolve, ResponseData, ResponseErrorCallback } from "./index-types";
9
+ export declare class MockResponse<D = ResponseData, L extends RecLike = RecLike> implements MockResponseLike<D, L>, RecLike {
10
+ private _headersSent;
11
+ readonly isFake: boolean;
12
+ [key: string]: unknown;
13
+ private readonly _resolver;
14
+ readonly app: Application;
15
+ readonly locals: L;
16
+ sendDate: boolean;
17
+ statusMessage: string;
18
+ private _headers;
19
+ private _cookies;
20
+ private _clearedCookies;
21
+ private _data;
22
+ private _status;
23
+ charset: string;
24
+ chunkedEncoding: boolean;
25
+ destroyed: boolean;
26
+ readonly connection: Socket | null;
27
+ finished: boolean;
28
+ readonly req: Request;
29
+ useChunkedEncodingByDefault: boolean;
30
+ readonly writable: boolean;
31
+ readonly writableCorked: number;
32
+ readonly writableEnded: boolean;
33
+ readonly writableFinished: boolean;
34
+ readonly writableHighWaterMark: number;
35
+ readonly writableLength: number;
36
+ readonly writableObjectMode: boolean;
37
+ shouldKeepAlive: boolean;
38
+ readonly socket: Socket | null;
39
+ statusCode: number;
40
+ writeHead: ((statusCode: number, statusMessage?: string, headers?: (OutgoingHttpHeaders | OutgoingHttpHeader[])) => this) & ((statusCode: number, headers?: (OutgoingHttpHeaders | OutgoingHttpHeader[])) => this);
41
+ closed: boolean;
42
+ errored: Error;
43
+ writableNeedDrain: boolean;
44
+ constructor(resolver: MockResponseResolve, origin?: Response);
45
+ private _send;
46
+ private _setHeader;
47
+ private _setCookie;
48
+ private _cancelCookieClear;
49
+ private _clear;
50
+ _construct(callback?: ResponseErrorCallback): void;
51
+ _destroy(error: Error | null, callback: ResponseErrorCallback): void;
52
+ _final(callback: ResponseErrorCallback): void;
53
+ _write(chunk: unknown, encoding: BufferEncoding, callback: ResponseErrorCallback): void;
54
+ _writev(chunks: Array<{
55
+ chunk: unknown;
56
+ encoding: BufferEncoding;
57
+ }>, callback: ResponseErrorCallback): void;
58
+ addTrailers(headers: OutgoingHttpHeaders | Array<[string, string]>): void;
59
+ assignSocket(socket: Socket): void;
60
+ get headersSent(): boolean;
61
+ cork(): void;
62
+ destroy(error: Error | undefined): this;
63
+ detachSocket(socket: Socket): void;
64
+ flushHeaders(): void;
65
+ getHeader(name: string): number | string | string[] | undefined;
66
+ getHeaderNames(): string[];
67
+ getHeaders(): OutgoingHttpHeaders;
68
+ hasHeader(name: string): boolean;
69
+ json(data: D): this;
70
+ jsonp(data: D): this;
71
+ pipe<T>(destination: T, options: {
72
+ end?: boolean | undefined;
73
+ } | undefined): T;
74
+ removeHeader(name: string): void;
75
+ send(body?: unknown): this;
76
+ setDefaultEncoding(encoding: BufferEncoding): this;
77
+ setHeader(name: string, value: number | string | ReadonlyArray<string>): this;
78
+ setTimeout(msecs: number, callback: (() => void) | undefined): this;
79
+ uncork(): void;
80
+ writeContinue(callback: (() => void) | undefined): void;
81
+ writeProcessing(): void;
82
+ addListener(eventName: string | symbol, listener: FuncLike): this;
83
+ append(key: string, value?: OneOrMore<string>): this;
84
+ attachment(filename?: string): this;
85
+ clearCookie(name: string, options?: CookieOptions): this;
86
+ contentType(type: string): this;
87
+ cookie(key: string, value: unknown, option?: CookieOptions): this;
88
+ download(path: string, fn?: Errback | string, err?: unknown, errBack?: Errback): void;
89
+ emit(eventName: string | symbol, ...args: unknown[]): boolean;
90
+ end(): this;
91
+ eventNames(): Array<string | symbol>;
92
+ format(obj: unknown): this;
93
+ get(field: string): string;
94
+ getMaxListeners(): number;
95
+ header(field: unknown, value?: OneOrMore<string>): this;
96
+ links(map: unknown): this;
97
+ listenerCount(eventName: string | symbol): number;
98
+ listeners(eventName: string | symbol): Array<FuncLike>;
99
+ location(url: string): this;
100
+ off(eventName: string | symbol, listener: FuncLike): this;
101
+ on(eventName: string | symbol, listener: FuncLike): this;
102
+ once(eventName: string | symbol, listener: FuncLike): this;
103
+ prependListener(eventName: string | symbol, listener: FuncLike): this;
104
+ prependOnceListener(eventName: string | symbol, listener: FuncLike): this;
105
+ rawListeners(eventName: string | symbol): Function[];
106
+ redirect(url: Key, status?: Key): void;
107
+ removeAllListeners(event?: string | symbol): this;
108
+ removeListener(eventName: string | symbol, listener: FuncLike): this;
109
+ render(view: string, options?: RecLike | ((err: Error, html: string) => void), callback?: (err: Error, html: string) => void): void;
110
+ sendFile(path: string, fn?: unknown, err?: Errback): void;
111
+ sendStatus(status: number): this;
112
+ sendfile(path: string, options?: unknown, fn?: Errback): void;
113
+ set(field: unknown, value?: string | string[]): this;
114
+ setMaxListeners(n: number): this;
115
+ status(status: number): this;
116
+ type(type: string): this;
117
+ vary(field: string): this;
118
+ write(buffer: Uint8Array | string, cb?: ResponseErrorCallback | BufferEncoding, cb2?: ResponseErrorCallback): boolean;
119
+ }