@haibun/core 1.15.0 → 1.16.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.
Files changed (84) hide show
  1. package/build/lib/Logger.js.map +1 -1
  2. package/build/lib/TestLogger.d.ts +1 -1
  3. package/build/lib/TestLogger.js.map +1 -1
  4. package/build/lib/Timer.js.map +1 -1
  5. package/build/lib/defs.d.ts +3 -3
  6. package/build/lib/defs.js +0 -2
  7. package/build/lib/defs.js.map +1 -1
  8. package/build/lib/domain.js.map +1 -1
  9. package/build/lib/features.js +5 -2
  10. package/build/lib/features.js.map +1 -1
  11. package/build/lib/features.test.js +2 -2
  12. package/build/lib/features.test.js.map +1 -1
  13. package/build/lib/interfaces/logger.js +0 -1
  14. package/build/lib/interfaces/logger.js.map +1 -1
  15. package/build/lib/namedVars.js +1 -1
  16. package/build/lib/namedVars.js.map +1 -1
  17. package/build/lib/namedVars.test.js +0 -2
  18. package/build/lib/namedVars.test.js.map +1 -1
  19. package/build/lib/run-with-options.js +6 -6
  20. package/build/lib/run-with-options.js.map +1 -1
  21. package/build/lib/run.d.ts +9 -11
  22. package/build/lib/run.js +30 -23
  23. package/build/lib/run.js.map +1 -1
  24. package/build/lib/run.test.js +13 -7
  25. package/build/lib/run.test.js.map +1 -1
  26. package/build/lib/test/TestSteps.d.ts +7 -7
  27. package/build/lib/test/TestSteps.js +6 -6
  28. package/build/lib/test/TestSteps.js.map +1 -1
  29. package/build/lib/test/TestStepsWithDomain.js.map +1 -1
  30. package/build/lib/test/lib.d.ts +9 -0
  31. package/build/lib/test/lib.js +4 -2
  32. package/build/lib/test/lib.js.map +1 -1
  33. package/build/{scaffold/scaffold.test.d.ts → lib/test/lib.test.d.ts} +0 -0
  34. package/build/lib/test/lib.test.js +12 -0
  35. package/build/lib/test/lib.test.js.map +1 -0
  36. package/build/lib/util/index.d.ts +5 -11
  37. package/build/lib/util/index.js +33 -53
  38. package/build/lib/util/index.js.map +1 -1
  39. package/build/lib/util/util.test.js +10 -28
  40. package/build/lib/util/util.test.js.map +1 -1
  41. package/build/phases/Builder.js +1 -1
  42. package/build/phases/Builder.js.map +1 -1
  43. package/build/phases/Builder.test.js +1 -1
  44. package/build/phases/Builder.test.js.map +1 -1
  45. package/build/phases/Executor.js +1 -1
  46. package/build/phases/Executor.js.map +1 -1
  47. package/build/phases/Resolver.domains.test.js +65 -65
  48. package/build/phases/Resolver.domains.test.js.map +1 -1
  49. package/build/phases/Resolver.js +9 -8
  50. package/build/phases/Resolver.js.map +1 -1
  51. package/build/phases/Resolver.test.js.map +1 -1
  52. package/build/phases/collector.d.ts +15 -0
  53. package/build/phases/collector.js +46 -0
  54. package/build/phases/collector.js.map +1 -0
  55. package/build/phases/collector.test.d.ts +1 -0
  56. package/build/phases/collector.test.js +88 -0
  57. package/build/phases/collector.test.js.map +1 -0
  58. package/build/steps/credentials.js.map +1 -1
  59. package/build/steps/haibun.d.ts +2 -2
  60. package/build/steps/haibun.js +10 -9
  61. package/build/steps/haibun.js.map +1 -1
  62. package/build/steps/vars.d.ts +4 -4
  63. package/build/steps/vars.js +2 -2
  64. package/build/steps/vars.js.map +1 -1
  65. package/package.json +18 -32
  66. package/build/link-packages.d.ts +0 -2
  67. package/build/link-packages.js +0 -22
  68. package/build/link-packages.js.map +0 -1
  69. package/build/scaffold/index.d.ts +0 -2
  70. package/build/scaffold/index.js +0 -9
  71. package/build/scaffold/index.js.map +0 -1
  72. package/build/scaffold/scaffold.d.ts +0 -10
  73. package/build/scaffold/scaffold.js +0 -82
  74. package/build/scaffold/scaffold.js.map +0 -1
  75. package/build/scaffold/scaffold.test.js +0 -29
  76. package/build/scaffold/scaffold.test.js.map +0 -1
  77. package/scaffold/.eslintrc.in +0 -20
  78. package/scaffold/.prettierrc.in +0 -6
  79. package/scaffold/jest.config.ts.in +0 -11
  80. package/scaffold/src/lib/test.ts.in +0 -10
  81. package/scaffold/src/lib/ts.in +0 -11
  82. package/scaffold/src/stepper.test.ts.in +0 -16
  83. package/scaffold/src/stepper.ts.in +0 -26
  84. package/scaffold/tsconfig.json.in +0 -14
package/package.json CHANGED
@@ -1,47 +1,33 @@
1
1
  {
2
2
  "name": "@haibun/core",
3
3
  "type": "module",
4
- "version": "1.15.0",
4
+ "version": "1.16.0",
5
5
  "description": "",
6
6
  "author": "",
7
- "main": "build/index.js",
8
- "bin": {
9
- "scaffold": "build/scaffold.js",
10
- "link-packages": "build/link-packages.js"
7
+ "xexports": {
8
+ "./lib/*": "./build/lib/*.js",
9
+ "./util/*": "./build/util/*.js",
10
+ "./test/*": "./build/test/*.js"
11
+ },
12
+ "xtypesVersions": {
13
+ "*": {
14
+ "build/*": [
15
+ "build/*"
16
+ ]
17
+ }
11
18
  },
12
19
  "files": [
13
- "build/**",
14
- "scaffold/**"
20
+ "build/**"
15
21
  ],
16
22
  "scripts": {
17
23
  "format": "prettier --write \"src/**/*.ts\" \"src/**/*.js\"",
18
24
  "lint": "eslint -c .eslintrc.json --ext .ts,.js src",
19
- "test": "jest --config jest.config.ts",
20
- "test-haibun": "build/cli.js test/projects/web",
21
- "coverage": "jest --config jest.config.ts --coverage",
25
+ "test": "jest",
26
+ "coverage": "jest --coverage",
22
27
  "test-watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch",
23
28
  "build": "tsc -b .",
24
- "tsc-watch": "tsc --watch",
25
- "tsc": "tsc",
29
+ "build-watch": "tsc -b . --watch",
26
30
  "prepublishOnly": "tsc -b .",
27
- "preversion": "npm run lint",
28
- "version": "npm run format && git add -A src"
29
- },
30
- "devDependencies": {
31
- "@types/jest": "^29.2.4",
32
- "@types/node": "^18.11.14",
33
- "@typescript-eslint/eslint-plugin": "^5.48.0",
34
- "@typescript-eslint/parser": "^5.48.0",
35
- "eslint": "^8.31.0",
36
- "eslint-config-airbnb-typescript": "^17.0.0",
37
- "eslint-config-prettier": "^8.6.0",
38
- "eslint-plugin-import": "^2.22.1",
39
- "eslint-plugin-prefer-arrow": "^1.2.2",
40
- "eslint-plugin-prettier": "^4.2.1",
41
- "jest": "^29.3.1",
42
- "prettier": "^2.8.1",
43
- "ts-jest": "^29.0.3",
44
- "tslint": "^6.1.3",
45
- "typescript": "^4.6.3"
31
+ "preversion": "npm run lint"
46
32
  }
47
- }
33
+ }
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env node
2
- export {};
@@ -1,22 +0,0 @@
1
- #!/usr/bin/env node
2
- import { readFileSync } from "fs";
3
- import { spawn } from "./lib/util/index.js";
4
- let pkg;
5
- try {
6
- pkg = JSON.parse(readFileSync('package.json', 'utf-8'));
7
- }
8
- catch (e) {
9
- console.error(`failed to read package.json ${e}`);
10
- process.exit(1);
11
- }
12
- for (const i in pkg.dependencies) {
13
- if (i.startsWith('@haibun/')) {
14
- spawn(['npm', 'link', i], process.cwd());
15
- }
16
- }
17
- for (const i in pkg.devDependencies) {
18
- if (i.startsWith('@haibun/')) {
19
- spawn(['npm', 'link', i], process.cwd());
20
- }
21
- }
22
- //# sourceMappingURL=link-packages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"link-packages.js","sourceRoot":"","sources":["../src/link-packages.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAE5C,IAAI,GAAG,CAAC;AACR,IAAI;IACA,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;CAC3D;AAAC,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,EAAE,CAAC,CAAC;IAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CACnB;AAED,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,YAAY,EAAE;IAC9B,IAAI,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;QAC1B,KAAK,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;KAC5C;CACJ;AAED,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,eAAe,EAAE;IACjC,IAAI,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;QAC1B,KAAK,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;KAC5C;CACJ"}
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env node
2
- export {};
@@ -1,9 +0,0 @@
1
- #!/usr/bin/env node
2
- import { scaffoldHaibun } from "./scaffold.js";
3
- try {
4
- scaffoldHaibun('.', console.info);
5
- }
6
- catch (e) {
7
- console.error(e);
8
- }
9
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scaffold/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,IAAI;IACA,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC;AAAC,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;CACpB"}
@@ -1,10 +0,0 @@
1
- #!/usr/bin/env node
2
- type Tkv = {
3
- [name: string]: string;
4
- };
5
- export declare function scaffoldHaibun(dest: string, out: typeof console.info, add?: {
6
- addDeps?: Tkv;
7
- addDevDeps?: Tkv;
8
- addDirs: string[];
9
- }): void;
10
- export {};
@@ -1,82 +0,0 @@
1
- #!/usr/bin/env node
2
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'fs';
3
- import path from 'path';
4
- const here = process.cwd();
5
- export function scaffoldHaibun(dest, out, add) {
6
- const mainHaibunPackage = JSON.parse(readFileSync(path.join(here, '..', '..', 'package.json'), 'utf-8'));
7
- const what = {
8
- dependencies: {
9
- '@haibun/core': `${mainHaibunPackage.version}`
10
- },
11
- devDependencies: ["@types/jest", "@types/node", "@typescript-eslint/eslint-plugin", "@typescript-eslint/parser", "eslint", "eslint-config-airbnb-typescript",
12
- "eslint-config-prettier", "eslint-plugin-import", "eslint-plugin-prefer-arrow", "eslint-plugin-prettier", "jest",
13
- "prettier", "ts-jest", "tslint", "typescript"]
14
- .reduce((a, i) => ({ ...a, [i]: mainHaibunPackage.devDependencies[i] }), {}),
15
- scripts: {
16
- test: 'jest --config jest.config.ts',
17
- lint: 'lint --ext .ts ./src/',
18
- },
19
- dirs: [
20
- 'src',
21
- 'src/lib',
22
- ]
23
- };
24
- let localDest;
25
- let pName;
26
- const localPackageJson = path.join(dest, 'package.json');
27
- try {
28
- const localPackage = readFileSync(localPackageJson, 'utf-8');
29
- localDest = JSON.parse(localPackage);
30
- pName = localDest.name.replace(/.*\//, '').replace(/[@]/, '_', 'g').replace(/-./g, (x) => x[1].toUpperCase());
31
- }
32
- catch (e) {
33
- throw Error('please run this command from a project folder that has a package.json file with at least a name field. {e}');
34
- }
35
- for (const t of ['devDependencies', 'dependencies', 'scripts']) {
36
- if (!localDest[t]) {
37
- localDest[t] = {};
38
- }
39
- for (const [k, v] of Object.entries(what[t])) {
40
- if (!localDest[t][k]) {
41
- if (v === undefined) {
42
- throw Error(`${t} ${k} is undefined`);
43
- }
44
- localDest[t][k] = v;
45
- }
46
- }
47
- }
48
- writeFileSync(localPackageJson, JSON.stringify(localDest, null, 2));
49
- for (const f of ['tsconfig.json', 'jest.config.ts', '.eslintrc', '.prettierrc']) {
50
- writeIfMissing(f);
51
- }
52
- for (const d of what.dirs) {
53
- const ddest = path.join(dest, d);
54
- if (!existsSync(ddest)) {
55
- out('mkdir', ddest);
56
- mkdirSync(ddest);
57
- }
58
- }
59
- for (const f of ['stepper.ts', 'stepper.test.ts']) {
60
- writeIfMissing(`src/${f}`, `src/${pName}-${f}`, 'WTW', pName);
61
- }
62
- for (const f of ['ts', 'test.ts']) {
63
- writeIfMissing(`src/lib/${f}`, `src/lib/${pName}.${f}`, 'WTW', pName);
64
- }
65
- function writeIfMissing(from, to, replace, instead) {
66
- to = path.join(dest, to || from);
67
- from = `${from}.in`;
68
- if (existsSync(to)) {
69
- out(`not copying ${to} because it already exists`);
70
- }
71
- else {
72
- let contents = readFileSync(path.join(here, 'scaffold', from), 'utf-8');
73
- if (replace) {
74
- contents = contents.replaceAll(replace, `${instead}`);
75
- }
76
- writeFileSync(to, contents);
77
- out(`copied ${to}`);
78
- }
79
- }
80
- return;
81
- }
82
- //# sourceMappingURL=scaffold.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../src/scaffold/scaffold.ts"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- import { mkdirSync, readdirSync, readFileSync, rmSync, writeFileSync } from "fs";
2
- import path from "path";
3
- import { scaffoldHaibun } from "./scaffold.js";
4
- const TMPDIR = '/tmp/haibun-scaffold-test/';
5
- const out = (...a) => undefined;
6
- beforeEach(() => {
7
- rmSync(TMPDIR, { recursive: true, force: true });
8
- mkdirSync(TMPDIR);
9
- });
10
- afterAll(() => {
11
- rmSync(TMPDIR, { recursive: true, force: true });
12
- });
13
- describe('scaffold', () => {
14
- it('throws for empty directory', async () => {
15
- expect(() => scaffoldHaibun(TMPDIR, out)).toThrow();
16
- });
17
- it('creates from basic', async () => {
18
- const haibunPackage = JSON.parse(readFileSync((path.join(process.cwd(), '..', '..', 'package.json')), 'utf-8'));
19
- writeFileSync(`${TMPDIR}/package.json`, JSON.stringify({ name: 'test' }));
20
- expect(() => scaffoldHaibun(TMPDIR, out)).not.toThrow();
21
- const pkg = JSON.parse(readFileSync(`${TMPDIR}/package.json`, 'utf-8'));
22
- expect(readdirSync(TMPDIR).sort()).toEqual(['package.json', 'src', 'tsconfig.json', 'jest.config.ts', '.eslintrc', '.prettierrc'].sort());
23
- expect(pkg.dependencies['@haibun/core']).toBeDefined();
24
- expect(pkg.devDependencies.jest).toEqual(haibunPackage.devDependencies.jest);
25
- expect(readdirSync(path.join(TMPDIR, 'src'))).toEqual(['lib', 'test-stepper.test.ts', 'test-stepper.ts']);
26
- expect(readdirSync(path.join(TMPDIR, 'src/lib'))).toEqual(['test.test.ts', 'test.ts']);
27
- });
28
- });
29
- //# sourceMappingURL=scaffold.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scaffold.test.js","sourceRoot":"","sources":["../../src/scaffold/scaffold.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACjF,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,MAAM,GAAG,4BAA4B,CAAC;AAC5C,MAAM,GAAG,GAAG,CAAC,GAAG,CAAW,EAAE,EAAE,CAAC,SAAS,CAAC;AAE1C,UAAU,CAAC,GAAG,EAAE;IACZ,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,SAAS,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC,CAAC,CAAC;AACH,QAAQ,CAAC,GAAG,EAAE;IACV,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACtB,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACxD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,oBAAoB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;QAEhH,aAAa,CAAC,GAAG,MAAM,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACxD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,MAAM,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1I,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACvD,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC7E,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAC1G,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1,20 +0,0 @@
1
- {
2
- "parser": "@typescript-eslint/parser",
3
- "parserOptions": {
4
- "ecmaVersion": 12,
5
- "sourceType": "module",
6
- },
7
- "plugins": ["@typescript-eslint"],
8
- "extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended"],
9
-
10
- "rules": {
11
- "@typescript-eslint/no-unused-vars": "warn",
12
- // to enforce using type for object type definitions, can be type or interface
13
- "@typescript-eslint/consistent-type-definitions": ["error", "type"],
14
- },
15
-
16
- "env": {
17
- "browser": false,
18
- "es2021": true
19
- }
20
- }
@@ -1,6 +0,0 @@
1
- {
2
- "semi": true,
3
- "singleQuote": true,
4
- "arrowParens": "avoid"
5
- }
6
-
@@ -1,11 +0,0 @@
1
- /** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
2
- module.exports = {
3
- preset: 'ts-jest',
4
- testEnvironment: 'node',
5
- testPathIgnorePatterns: ['node_modules', 'build'],
6
- globals: {
7
- 'testMatch': [
8
- "<rootDir>/src/**/*.test.ts"
9
- ]
10
- }
11
- };
@@ -1,10 +0,0 @@
1
- import WTW from './WTW';
2
-
3
- describe('test WTW lib ', () => {
4
- it('passes', () => {
5
- expect(WTW('passes').ok).toBe(true);
6
- });
7
- it('fails', () => {
8
- expect(WTW('fails')?.ok!).toBe(false);
9
- });
10
- })
@@ -1,11 +0,0 @@
1
- export default function WTW(what: string): { ok: true } | { ok: false, error: { message: string } } {
2
- if (what === 'passes') {
3
- return { ok: true };
4
- }
5
- return {
6
- ok: false,
7
- error: {
8
- message: 'not passing'
9
- }
10
- };
11
- }
@@ -1,16 +0,0 @@
1
- import { testWithDefaults } from '@haibun/core/build/lib/test/lib.js';
2
-
3
- import WTW from './WTW-stepper';
4
-
5
- describe('WTW test', () => {
6
- it('passes', async () => {
7
- const feature = { path: '/features/test.feature', content: `your test phrase passes` };
8
- const result = await testWithDefaults([feature], [WTW]);
9
- expect(result.ok).toBe(true);
10
- });
11
- it('fails', async () => {
12
- const feature = { path: '/features/test.feature', content: `your test phrase fails` };
13
- const result = await testWithDefaults([feature], [WTW]);
14
- expect(result.ok).toBe(false);
15
- });
16
- });
@@ -1,26 +0,0 @@
1
- import { AStepper, OK, TNamed, TWorld } from '@haibun/core/build/lib/defs.js';
2
- import { actionNotOK } from '@haibun/core/build/lib/util/index.js';
3
-
4
- import WTW from './lib/WTW';
5
-
6
- class WTWStepper extends AStepper {
7
- setWorld(world: TWorld, steppers: AStepper[]) {
8
- super.setWorld(world, steppers);
9
- }
10
-
11
- steps = {
12
- WTW: {
13
- gwta: `your test phrase {what}`,
14
- action: async ({ what }: TNamed) => {
15
- const value = await WTW(what);
16
- if (value.ok === true) {
17
- return OK;
18
- }
19
- const { message } = value.error;
20
- return actionNotOK(message, { topics: { WTW: { summary: message, details: value } } });
21
- }
22
- },
23
- }
24
- }
25
-
26
- export default WTWStepper;
@@ -1,14 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "module": "NodeNext",
4
- "target": "esnext",
5
- "sourceMap": true,
6
- "declaration": true,
7
- "outDir": "./build",
8
- "rootDir": "./src"
9
- },
10
- "exclude": [
11
- "./jest.config.ts",
12
- "build"
13
- ]
14
- }