@wocker/testing 1.0.5 → 1.0.6-beta.0

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.
@@ -0,0 +1,32 @@
1
+ import { AddressInfo, SocketReadyState } from "net";
2
+ import { Duplex } from "stream";
3
+ export declare class MockReadStream extends Duplex implements NodeJS.ReadStream {
4
+ isTTY: boolean;
5
+ isRaw: boolean;
6
+ autoSelectFamilyAttemptedAddresses: string[];
7
+ bufferSize: number;
8
+ bytesRead: number;
9
+ bytesWritten: number;
10
+ connecting: boolean;
11
+ pending: boolean;
12
+ localAddress?: string;
13
+ localPort?: number;
14
+ localFamily?: string;
15
+ readyState: SocketReadyState;
16
+ remoteAddress: string;
17
+ remoteFamily: string;
18
+ remotePort: number;
19
+ timeout?: number;
20
+ setRawMode(mode: boolean): this;
21
+ pause(): this;
22
+ resume(): this;
23
+ destroySoon(): void;
24
+ connect(port: unknown, host?: unknown, connectionListener?: unknown): this;
25
+ resetAndDestroy(): this;
26
+ setTimeout(timeout: number, callback?: () => void): this;
27
+ setNoDelay(noDelay?: boolean): this;
28
+ setKeepAlive(enable?: boolean, initialDelay?: number): this;
29
+ address(): AddressInfo | {};
30
+ unref(): this;
31
+ ref(): this;
32
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MockReadStream = void 0;
4
+ const stream_1 = require("stream");
5
+ class MockReadStream extends stream_1.Duplex {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.isTTY = false;
9
+ this.isRaw = false;
10
+ this.connecting = false;
11
+ }
12
+ setRawMode(mode) {
13
+ this.isRaw = mode;
14
+ return this;
15
+ }
16
+ pause() {
17
+ return this;
18
+ }
19
+ resume() {
20
+ return this;
21
+ }
22
+ destroySoon() {
23
+ }
24
+ connect(port, host, connectionListener) {
25
+ throw new Error("Method not implemented.");
26
+ }
27
+ resetAndDestroy() {
28
+ throw new Error("Method not implemented.");
29
+ }
30
+ setTimeout(timeout, callback) {
31
+ throw new Error("Method not implemented.");
32
+ }
33
+ setNoDelay(noDelay) {
34
+ throw new Error("Method not implemented.");
35
+ }
36
+ setKeepAlive(enable, initialDelay) {
37
+ throw new Error("Method not implemented.");
38
+ }
39
+ address() {
40
+ throw new Error("Method not implemented.");
41
+ }
42
+ unref() {
43
+ throw new Error("Method not implemented.");
44
+ }
45
+ ref() {
46
+ throw new Error("Method not implemented.");
47
+ }
48
+ }
49
+ exports.MockReadStream = MockReadStream;
@@ -0,0 +1,36 @@
1
+ import { AddressInfo, SocketReadyState } from "net";
2
+ import { PassThrough } from "stream";
3
+ import { Direction } from "tty";
4
+ export declare class MockWriteStream extends PassThrough implements NodeJS.WriteStream {
5
+ isTTY: boolean;
6
+ columns: number;
7
+ rows: number;
8
+ autoSelectFamilyAttemptedAddresses: string[];
9
+ bufferSize: number;
10
+ bytesRead: number;
11
+ bytesWritten: number;
12
+ connecting: boolean;
13
+ pending: boolean;
14
+ readyState: SocketReadyState;
15
+ remoteAddress: string | undefined;
16
+ remoteFamily: string | undefined;
17
+ remotePort: number | undefined;
18
+ constructor();
19
+ connect(): this;
20
+ destroySoon(): void;
21
+ resetAndDestroy(): this;
22
+ setTimeout(timeout: number, callback?: () => void): this;
23
+ setNoDelay(noDelay?: boolean): this;
24
+ setKeepAlive(enable?: boolean, initialDelay?: number): this;
25
+ address(): AddressInfo | {};
26
+ ref(): this;
27
+ unref(): this;
28
+ clearLine(dir: Direction, callback?: () => void): boolean;
29
+ clearScreenDown(callback?: () => void): boolean;
30
+ cursorTo(x: number, y?: number, callback?: () => void): boolean;
31
+ cursorTo(x: number, callback: () => void): boolean;
32
+ moveCursor(dx: number, dy: number, callback?: () => void): boolean;
33
+ getColorDepth(env?: object): number;
34
+ hasColors(count?: unknown, env?: unknown): boolean;
35
+ getWindowSize(): [number, number];
36
+ }
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MockWriteStream = void 0;
7
+ const stream_1 = require("stream");
8
+ const readline_1 = __importDefault(require("readline"));
9
+ class MockWriteStream extends stream_1.PassThrough {
10
+ constructor() {
11
+ super({});
12
+ this.isTTY = true;
13
+ this.columns = 0;
14
+ this.rows = 0;
15
+ this.autoSelectFamilyAttemptedAddresses = [];
16
+ this.bufferSize = 0;
17
+ this.bytesRead = 0;
18
+ this.bytesWritten = 0;
19
+ this.connecting = false;
20
+ this.pending = false;
21
+ this.readyState = "writeOnly";
22
+ }
23
+ connect() {
24
+ throw new Error("Method not implemented.");
25
+ }
26
+ destroySoon() {
27
+ throw new Error("Method not implemented.");
28
+ }
29
+ resetAndDestroy() {
30
+ throw new Error("Method not implemented.");
31
+ }
32
+ setTimeout(timeout, callback) {
33
+ throw new Error("Method not implemented.");
34
+ }
35
+ setNoDelay(noDelay) {
36
+ throw new Error("Method not implemented.");
37
+ }
38
+ setKeepAlive(enable, initialDelay) {
39
+ throw new Error("Method not implemented.");
40
+ }
41
+ address() {
42
+ throw new Error("Method not implemented.");
43
+ }
44
+ ref() {
45
+ throw new Error("Method not implemented.");
46
+ }
47
+ unref() {
48
+ throw new Error("Method not implemented.");
49
+ }
50
+ clearLine(dir, callback) {
51
+ return readline_1.default.clearLine(this, dir, callback);
52
+ }
53
+ clearScreenDown(callback) {
54
+ return readline_1.default.clearScreenDown(this, callback);
55
+ }
56
+ cursorTo(x, yOrCallback, callback) {
57
+ const y = typeof yOrCallback === "number" ? yOrCallback : undefined;
58
+ if (typeof yOrCallback === "function") {
59
+ callback = yOrCallback;
60
+ }
61
+ return readline_1.default.cursorTo(this, x, y, callback);
62
+ }
63
+ moveCursor(dx, dy, callback) {
64
+ return readline_1.default.moveCursor(this, dx, dy, callback);
65
+ }
66
+ getColorDepth(env) {
67
+ throw new Error("Method not implemented.");
68
+ }
69
+ hasColors(count, env) {
70
+ throw new Error("Method not implemented.");
71
+ }
72
+ getWindowSize() {
73
+ throw new Error("Method not implemented.");
74
+ }
75
+ }
76
+ exports.MockWriteStream = MockWriteStream;
@@ -15,7 +15,7 @@ class TestingModuleBuilder {
15
15
  this.overrideProviders = new Map();
16
16
  this.overrideModules = new Map();
17
17
  this.overrideProvider(core_1.ProcessService)
18
- .useProvider(services_1.MockProcessService);
18
+ .useProvider(services_1.ProcessMockService);
19
19
  }
20
20
  createModule(metadata) {
21
21
  let TestingModule = class TestingModule {
@@ -0,0 +1,17 @@
1
+ import { ProcessService, FileSystemDriver } from "@wocker/core";
2
+ import { MockReadStream } from "../makes/MockReadStream";
3
+ import { MockWriteStream } from "../makes/MockWriteStream";
4
+ export declare class ProcessMockService extends ProcessService {
5
+ protected readonly driver: FileSystemDriver;
6
+ protected _pwd: string;
7
+ protected _stdin: MockReadStream;
8
+ protected _stdout: MockWriteStream;
9
+ protected _stderr: MockWriteStream;
10
+ constructor(dataDir: string, driver: FileSystemDriver);
11
+ get stdin(): MockReadStream;
12
+ get stdout(): MockWriteStream;
13
+ get stderr(): MockWriteStream;
14
+ pwd(path?: string): string;
15
+ chdir(path: string): void;
16
+ write(chunk: string | Buffer): boolean;
17
+ }
@@ -15,16 +15,28 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
15
15
  return (mod && mod.__esModule) ? mod : { "default": mod };
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.MockProcessService = void 0;
18
+ exports.ProcessMockService = void 0;
19
19
  const core_1 = require("@wocker/core");
20
- const stream_1 = require("stream");
21
20
  const path_1 = __importDefault(require("path"));
22
- let MockProcessService = class MockProcessService extends core_1.ProcessService {
21
+ const MockReadStream_1 = require("../makes/MockReadStream");
22
+ const MockWriteStream_1 = require("../makes/MockWriteStream");
23
+ let ProcessMockService = class ProcessMockService extends core_1.ProcessService {
23
24
  constructor(dataDir, driver) {
24
25
  super();
25
26
  this.driver = driver;
26
27
  this._pwd = dataDir;
27
- this.stdout = new stream_1.Duplex();
28
+ this._stdin = new MockReadStream_1.MockReadStream();
29
+ this._stdout = new MockWriteStream_1.MockWriteStream();
30
+ this._stderr = new MockWriteStream_1.MockWriteStream();
31
+ }
32
+ get stdin() {
33
+ return this._stdin;
34
+ }
35
+ get stdout() {
36
+ return this._stdout;
37
+ }
38
+ get stderr() {
39
+ return this._stderr;
28
40
  }
29
41
  pwd(path = "") {
30
42
  return path_1.default.join(this._pwd, path);
@@ -39,10 +51,10 @@ let MockProcessService = class MockProcessService extends core_1.ProcessService
39
51
  return this.stdout.write(chunk);
40
52
  }
41
53
  };
42
- exports.MockProcessService = MockProcessService;
43
- exports.MockProcessService = MockProcessService = __decorate([
54
+ exports.ProcessMockService = ProcessMockService;
55
+ exports.ProcessMockService = ProcessMockService = __decorate([
44
56
  (0, core_1.Injectable)("CORE_PROCESS_SERVICE"),
45
57
  __param(0, (0, core_1.Inject)(core_1.WOCKER_DATA_DIR_KEY)),
46
58
  __param(1, (0, core_1.Inject)(core_1.FILE_SYSTEM_DRIVER_KEY)),
47
59
  __metadata("design:paramtypes", [String, Object])
48
- ], MockProcessService);
60
+ ], ProcessMockService);
@@ -1 +1 @@
1
- export * from "./MockProcessService";
1
+ export * from "./ProcessMockService";
@@ -14,4 +14,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./MockProcessService"), exports);
17
+ __exportStar(require("./ProcessMockService"), exports);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@wocker/testing",
3
3
  "type": "commonjs",
4
- "version": "1.0.5",
4
+ "version": "1.0.6-beta.0",
5
5
  "author": "Kris Papercut <krispcut@gmail.com>",
6
6
  "description": "Docker workspace for web projects (testing)",
7
7
  "license": "MIT",
@@ -30,7 +30,7 @@
30
30
  "make-coverage-badge": "make-coverage-badge"
31
31
  },
32
32
  "peerDependencies": {
33
- "@wocker/core": "^1.0.26",
33
+ "@wocker/core": "^1.0.30-beta.1",
34
34
  "docker-modem": "^5.0.6",
35
35
  "dockerode": "^4.0.7"
36
36
  },
@@ -1,11 +0,0 @@
1
- import { ProcessService, FileSystemDriver } from "@wocker/core";
2
- import { Duplex } from "stream";
3
- export declare class MockProcessService extends ProcessService {
4
- protected readonly driver: FileSystemDriver;
5
- protected _pwd: string;
6
- protected stdout: Duplex;
7
- constructor(dataDir: string, driver: FileSystemDriver);
8
- pwd(path?: string): string;
9
- chdir(path: string): void;
10
- write(chunk: string | Buffer): boolean;
11
- }