testeranto 0.75.0 → 0.79.3

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 (136) hide show
  1. package/README.md +25 -24
  2. package/devBot.dockerfile +12 -0
  3. package/dist/common/Node.js +1 -0
  4. package/dist/common/PM/index.js +0 -64
  5. package/dist/common/PM/main.js +278 -7
  6. package/dist/common/PM/node.js +4 -0
  7. package/dist/common/PM/web.js +3 -0
  8. package/dist/common/Project.js +6 -2
  9. package/dist/common/Puppeteer.js +12 -17
  10. package/dist/common/Reporter.js +1 -8
  11. package/dist/common/SubPackages/react-dom/component/web.js +5 -25
  12. package/dist/common/SubPackages/react-dom/jsx/web.js +80 -55
  13. package/dist/common/SubPackages/react-test-renderer/component/index.js +0 -86
  14. package/dist/common/SubPackages/react-test-renderer/component/interface.js +68 -0
  15. package/dist/common/SubPackages/react-test-renderer/component/node.js +2 -2
  16. package/dist/common/SubPackages/react-test-renderer/component/web.js +2 -2
  17. package/dist/common/TaskManBackEnd.js +156 -0
  18. package/dist/common/Types.js +0 -2
  19. package/dist/common/esbuildConfigs/index.js +1 -0
  20. package/dist/common/esbuildConfigs/inputFilesPlugin.js +49 -0
  21. package/dist/common/esbuildConfigs/node.js +3 -1
  22. package/dist/common/esbuildConfigs/web.js +3 -1
  23. package/dist/common/lib/abstractBase.js +222 -17
  24. package/dist/common/lib/basebuilder.js +4 -38
  25. package/dist/common/lib/classBuilder.js +1 -3
  26. package/dist/common/lib/core.js +3 -5
  27. package/dist/common/mongooseSchemas.js +56 -0
  28. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  29. package/dist/common/utils.js +16 -0
  30. package/dist/module/ExampleTab.js +112 -0
  31. package/dist/module/Node.js +1 -0
  32. package/dist/module/PM/index.js +0 -64
  33. package/dist/module/PM/main.js +278 -7
  34. package/dist/module/PM/node.js +4 -0
  35. package/dist/module/PM/web.js +3 -0
  36. package/dist/module/Project.js +6 -2
  37. package/dist/module/Puppeteer.js +12 -17
  38. package/dist/module/Reporter.js +1 -8
  39. package/dist/module/SubPackages/react-dom/component/web.js +5 -25
  40. package/dist/module/SubPackages/react-dom/jsx/web.js +80 -55
  41. package/dist/module/SubPackages/react-test-renderer/component/index.js +1 -59
  42. package/dist/module/SubPackages/react-test-renderer/component/interface.js +39 -0
  43. package/dist/module/SubPackages/react-test-renderer/component/node.js +1 -1
  44. package/dist/module/SubPackages/react-test-renderer/component/web.js +1 -1
  45. package/dist/module/TaskManBackEnd.js +151 -0
  46. package/dist/module/TaskManFrontEnd.js +600 -0
  47. package/dist/module/Types.js +0 -2
  48. package/dist/module/esbuildConfigs/index.js +1 -0
  49. package/dist/module/esbuildConfigs/inputFilesPlugin.js +44 -0
  50. package/dist/module/esbuildConfigs/node.js +3 -1
  51. package/dist/module/esbuildConfigs/web.js +3 -1
  52. package/dist/module/lib/abstractBase.js +222 -17
  53. package/dist/module/lib/basebuilder.js +4 -38
  54. package/dist/module/lib/classBuilder.js +1 -3
  55. package/dist/module/lib/core.js +3 -5
  56. package/dist/module/mongooseSchemas.js +50 -0
  57. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  58. package/dist/module/utils.js +9 -0
  59. package/dist/prebuild/Report.js +117 -36
  60. package/dist/prebuild/TaskManBackEnd.mjs +185 -0
  61. package/dist/prebuild/TaskManFrontEnd.css +12301 -0
  62. package/dist/prebuild/TaskManFrontEnd.js +81737 -0
  63. package/dist/types/Node.d.ts +1 -1
  64. package/dist/types/PM/index.d.ts +2 -1
  65. package/dist/types/PM/main.d.ts +6 -3
  66. package/dist/types/PM/node.d.ts +2 -0
  67. package/dist/types/PM/web.d.ts +1 -0
  68. package/dist/types/SubPackages/puppeteer.d.ts +1 -1
  69. package/dist/types/SubPackages/react/component/node.d.ts +1 -1
  70. package/dist/types/SubPackages/react/component/web.d.ts +1 -1
  71. package/dist/types/SubPackages/react/jsx/node.d.ts +2 -2
  72. package/dist/types/SubPackages/react/jsx/web.d.ts +2 -2
  73. package/dist/types/SubPackages/react-dom/component/node.d.ts +2 -2
  74. package/dist/types/SubPackages/react-dom/component/web.d.ts +8 -2
  75. package/dist/types/SubPackages/react-dom/jsx/node.d.ts +2 -2
  76. package/dist/types/SubPackages/react-dom/jsx/web.d.ts +2 -2
  77. package/dist/types/SubPackages/react-test-renderer/MemoExoticComponent/node.d.ts +2 -2
  78. package/dist/types/SubPackages/react-test-renderer/component/index.d.ts +0 -7
  79. package/dist/types/SubPackages/react-test-renderer/component/interface.d.ts +9 -0
  80. package/dist/types/SubPackages/react-test-renderer/component/node.d.ts +1 -2
  81. package/dist/types/SubPackages/react-test-renderer/component/web.d.ts +1 -2
  82. package/dist/types/SubPackages/react-test-renderer/fc/node.d.ts +1 -1
  83. package/dist/types/SubPackages/react-test-renderer/fc/web.d.ts +1 -1
  84. package/dist/types/SubPackages/react-test-renderer/jsx/node.d.ts +1 -2
  85. package/dist/types/SubPackages/react-test-renderer/jsx/web.d.ts +1 -2
  86. package/dist/types/SubPackages/react-test-renderer/jsx-promised/node.d.ts +1 -2
  87. package/dist/types/SubPackages/react-test-renderer/jsx-promised/web.d.ts +1 -2
  88. package/dist/types/TaskManBackEnd.d.ts +1 -0
  89. package/dist/types/Types.d.ts +19 -19
  90. package/dist/types/Web.d.ts +1 -1
  91. package/dist/types/esbuildConfigs/inputFilesPlugin.d.ts +5 -0
  92. package/dist/types/lib/abstractBase.d.ts +8 -8
  93. package/dist/types/lib/basebuilder.d.ts +1 -1
  94. package/dist/types/lib/classBuilder.d.ts +1 -1
  95. package/dist/types/lib/core.d.ts +1 -1
  96. package/dist/types/lib/index.d.ts +5 -5
  97. package/dist/types/lib/types.d.ts +15 -13
  98. package/dist/types/mongooseSchemas.d.ts +124 -0
  99. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  100. package/dist/types/utils.d.ts +2 -0
  101. package/docker-compose-dev.yml +9 -0
  102. package/docker-compose-prod.yml +18 -0
  103. package/package.json +20 -7
  104. package/src/ExampleTab.tsx +219 -0
  105. package/src/Node.ts +31 -2
  106. package/src/PM/index.ts +6 -83
  107. package/src/PM/main.ts +389 -11
  108. package/src/PM/node.ts +6 -0
  109. package/src/PM/web.ts +4 -0
  110. package/src/Project.ts +10 -2
  111. package/src/Puppeteer.ts +16 -17
  112. package/src/Report.tsx +17 -40
  113. package/src/Reporter.ts +1 -9
  114. package/src/SubPackages/react-dom/component/web.ts +10 -30
  115. package/src/SubPackages/react-dom/jsx/web.ts +111 -74
  116. package/src/SubPackages/react-test-renderer/component/index.ts +0 -66
  117. package/src/SubPackages/react-test-renderer/component/interface.ts +48 -0
  118. package/src/SubPackages/react-test-renderer/component/node.ts +2 -1
  119. package/src/SubPackages/react-test-renderer/component/web.ts +2 -1
  120. package/src/TaskManBackEnd.ts +200 -0
  121. package/src/TaskManFrontEnd.tsx +1222 -0
  122. package/src/Types.ts +136 -28
  123. package/src/Web.ts +32 -2
  124. package/src/esbuildConfigs/index.ts +1 -0
  125. package/src/esbuildConfigs/inputFilesPlugin.ts +65 -0
  126. package/src/esbuildConfigs/node.ts +3 -1
  127. package/src/esbuildConfigs/web.ts +4 -0
  128. package/src/lib/abstractBase.ts +337 -34
  129. package/src/lib/basebuilder.ts +17 -52
  130. package/src/lib/classBuilder.ts +14 -2
  131. package/src/lib/core.ts +18 -7
  132. package/src/lib/index.ts +115 -7
  133. package/src/lib/types.ts +143 -35
  134. package/src/mongooseSchemas.ts +105 -0
  135. package/src/utils.ts +15 -0
  136. package/yarn-error.log +3144 -0
@@ -5,9 +5,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const readline_1 = __importDefault(require("readline"));
7
7
  const fs_1 = __importDefault(require("fs"));
8
- const path_1 = __importDefault(require("path"));
9
8
  const jsonc_1 = require("jsonc");
10
9
  const main_js_1 = require("./PM/main.js");
10
+ const utils_js_1 = require("./utils.js");
11
11
  var mode = process.argv[2] === "-dev" ? "DEV" : "PROD";
12
12
  const node2web = {};
13
13
  const web2node = {};
@@ -28,18 +28,20 @@ const main = async () => {
28
28
  waitForInitialPage: false,
29
29
  executablePath: "/opt/homebrew/bin/chromium",
30
30
  headless: true,
31
- dumpio: true,
31
+ // dumpio: true,
32
32
  args: [
33
+ "--disable-features=IsolateOrigins,site-per-process",
34
+ "--disable-site-isolation-trials",
35
+ "--allow-insecure-localhost",
33
36
  "--allow-file-access-from-files",
34
37
  "--allow-running-insecure-content",
35
- "--auto-open-devtools-for-tabs",
38
+ // "--auto-open-devtools-for-tabs",
36
39
  "--disable-dev-shm-usage",
37
40
  "--disable-extensions",
38
41
  "--disable-gpu",
39
42
  "--disable-setuid-sandbox",
40
43
  "--disable-site-isolation-trials",
41
44
  "--disable-web-security",
42
- "--disable-web-security",
43
45
  "--no-first-run",
44
46
  "--no-sandbox",
45
47
  "--no-startup-window",
@@ -58,19 +60,12 @@ const main = async () => {
58
60
  // "--start-maximized",
59
61
  ],
60
62
  }, ".");
61
- const destinationOfRuntime = (f, r) => {
62
- return path_1.default
63
- .normalize(`${configs.buildDir}/${r}/${f}`)
64
- .split(".")
65
- .slice(0, -1)
66
- .join(".");
67
- };
68
- configs.tests.forEach(([test, runtime, secondaryArtifacts]) => {
63
+ configs.tests.forEach(([test, runtime, tr, sidecars]) => {
69
64
  if (runtime === "node") {
70
- pm.launchNode(test, destinationOfRuntime(test, "node"));
65
+ pm.launchNode(test, (0, utils_js_1.destinationOfRuntime)(test, "node", configs));
71
66
  }
72
67
  else if (runtime === "web") {
73
- pm.launchWeb(test, destinationOfRuntime(test, "web"));
68
+ pm.launchWeb(test, (0, utils_js_1.destinationOfRuntime)(test, "web", configs), sidecars);
74
69
  }
75
70
  else {
76
71
  console.error("runtime makes no sense", runtime);
@@ -81,7 +76,7 @@ const main = async () => {
81
76
  recursive: true,
82
77
  }, (eventType, changedFile) => {
83
78
  if (changedFile) {
84
- configs.tests.forEach(([test, runtime, secondaryArtifacts]) => {
79
+ configs.tests.forEach(([test, runtime, tr, sidecars]) => {
85
80
  if (eventType === "change" || eventType === "rename") {
86
81
  if (changedFile ===
87
82
  test
@@ -90,7 +85,7 @@ const main = async () => {
90
85
  .slice(0, -1)
91
86
  .concat("mjs")
92
87
  .join(".")) {
93
- pm.launchNode(test, destinationOfRuntime(test, "node"));
88
+ pm.launchNode(test, (0, utils_js_1.destinationOfRuntime)(test, "node", configs));
94
89
  }
95
90
  if (changedFile ===
96
91
  test
@@ -99,7 +94,7 @@ const main = async () => {
99
94
  .slice(0, -1)
100
95
  .concat("mjs")
101
96
  .join(".")) {
102
- pm.launchWeb(test, destinationOfRuntime(test, "web"));
97
+ pm.launchWeb(test, (0, utils_js_1.destinationOfRuntime)(test, "web", configs), sidecars);
103
98
  }
104
99
  }
105
100
  });
@@ -61,14 +61,7 @@ const main = async () => {
61
61
  const page = await browser.newPage();
62
62
  await page.setViewport({ width: 0, height: 0 });
63
63
  console.log("Requesting url...");
64
- await page.goto(`file://${process.cwd()}/docs/report.html`);
65
- // const destinationOfRuntime = (f: string, r: IRunTime) => {
66
- // return path
67
- // .normalize(`${configs.buildDir}/${r}/${f}`)
68
- // .split(".")
69
- // .slice(0, -1)
70
- // .join(".");
71
- // };
64
+ await page.goto(`file://${process.cwd()}/docs/report.html?local=true`);
72
65
  // configs.tests.forEach(([test, runtime, secondaryArtifacts]) => {
73
66
  // if (runtime === "node") {
74
67
  // pm.launchNode(test, destinationOfRuntime(test, "node"));
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = require("react");
7
7
  const client_1 = __importDefault(require("react-dom/client"));
8
8
  const Web_js_1 = __importDefault(require("../../../Web.js"));
9
- exports.default = (testInput, testSpecifications, testImplementations) => {
9
+ exports.default = (testInput, testSpecifications, testImplementations, testInterface) => {
10
10
  class TesterantoComponent extends testInput {
11
11
  constructor(props) {
12
12
  super(props);
@@ -19,7 +19,6 @@ exports.default = (testInput, testSpecifications, testImplementations) => {
19
19
  }
20
20
  const t = (0, Web_js_1.default)(testInput, testSpecifications, testImplementations, {
21
21
  beforeAll: async (initialProps, artificer) => {
22
- console.log("mark5", initialProps);
23
22
  return await new Promise((resolve, rej) => {
24
23
  const htmlElement = document.getElementById("root");
25
24
  if (htmlElement) {
@@ -71,29 +70,10 @@ exports.default = (testInput, testSpecifications, testImplementations) => {
71
70
  butThen: async function (s, thenCB) {
72
71
  return thenCB(s);
73
72
  },
74
- afterEach: async function (store, ndx, artificer, utils) {
75
- console.log("afterEach", store);
76
- utils.writeFileSync("aftereachlog", store.toString());
77
- const page = (await utils.browser.pages()).filter((x) => {
78
- const parsedUrl = new URL(x.url());
79
- parsedUrl.search = "";
80
- const strippedUrl = parsedUrl.toString();
81
- return (strippedUrl ===
82
- "file:///Users/adam/Code/kokomoBay/docs/web/src/ClassicalComponent/react-dom/client.web.test.html");
83
- // return true;
84
- })[0];
85
- const x = await page.screenshot({
86
- path: "afterEachLog.jpg",
87
- });
88
- console.log("x", x);
89
- // debugger;
90
- // const div_root = document.getElementById("root");
91
- // store.domRoot && store.domRoot.unmount(); //React 18
92
- // store.remove();
93
- // store.htmlElement.remove();
94
- // store.htmlElement = document.createElement("root");
95
- return store;
96
- },
73
+ afterEach: (testInterface === null || testInterface === void 0 ? void 0 : testInterface.afterEach) ||
74
+ async function (store, ndx, artificer, utils) {
75
+ return store;
76
+ },
97
77
  afterAll: async (store, artificer, utils) => {
98
78
  // setTimeout(() => {
99
79
  // console.log("This will run after 1 second");
@@ -27,67 +27,92 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  const react_1 = __importStar(require("react"));
30
+ const react_2 = require("react");
31
+ const client_1 = __importDefault(require("react-dom/client"));
30
32
  const react_dom_1 = require("react-dom");
31
33
  const Web_js_1 = __importDefault(require("../../../Web.js"));
32
34
  exports.default = (testImplementations, testSpecifications, testInput) => {
33
- document.addEventListener("DOMContentLoaded", function () {
34
- const rootElement = document.getElementById("root");
35
- if (rootElement) {
36
- const TesterantoComponent = function ({ done, innerComp, }) {
37
- const myContainer = (0, react_1.useRef)(null);
38
- (0, react_1.useEffect)(() => {
39
- console.log("useEffect called", myContainer.current);
40
- done(myContainer.current);
41
- }, []);
42
- return react_1.default.createElement("div", { ref: myContainer }, innerComp());
43
- };
44
- (0, Web_js_1.default)(testInput, testSpecifications, testImplementations, {
45
- beforeAll: async (input, artificer) => {
46
- return await new Promise((resolve, rej) => {
47
- resolve(rootElement);
48
- });
49
- },
50
- beforeEach: async (subject, ndx, testRsource, artificer) => {
51
- return new Promise((resolve, rej) => {
52
- (0, react_dom_1.createPortal)(TesterantoComponent({
53
- innerComp: testInput,
54
- done: (reactElement) => {
55
- process.nextTick(() => {
56
- resolve(reactElement);
57
- });
58
- },
59
- }), rootElement);
60
- });
61
- },
62
- andWhen: function (s, whenCB) {
63
- return new Promise((resolve, rej) => {
64
- process.nextTick(() => {
65
- resolve(whenCB()(s));
66
- });
67
- });
68
- },
69
- butThen: async function (s) {
70
- return new Promise((resolve, rej) => {
71
- process.nextTick(() => {
72
- resolve(s);
73
- });
74
- });
75
- },
76
- afterEach: async function (store, ndx, artificer) {
77
- return new Promise((resolve, rej) => {
78
- process.nextTick(() => {
79
- resolve({});
80
- });
81
- });
82
- },
83
- afterAll: (store, artificer) => {
84
- return new Promise((resolve, rej) => {
35
+ console.log("testInput", testInput);
36
+ const TesterantoComponent = function ({ done, innerComp, }) {
37
+ const myContainer = (0, react_1.useRef)(null);
38
+ (0, react_1.useEffect)(() => {
39
+ console.log("useEffect called!", myContainer.current);
40
+ done(myContainer.current);
41
+ }, []);
42
+ // debugger;
43
+ return react_1.default.createElement("div", { ref: myContainer }, innerComp());
44
+ };
45
+ const t = (0, Web_js_1.default)(testInput, testSpecifications, testImplementations, {
46
+ beforeAll: async (reactElement, itr) => {
47
+ return await new Promise((resolve, rej) => {
48
+ const htmlElement = document.getElementById("root");
49
+ if (htmlElement) {
50
+ const domRoot = client_1.default.createRoot(htmlElement);
51
+ domRoot.render((0, react_2.createElement)(TesterantoComponent, {
52
+ // ...initialProps,
53
+ innerComp: reactElement,
54
+ done: (reactElement) => {
55
+ resolve({
56
+ htmlElement,
57
+ reactElement,
58
+ domRoot,
59
+ });
60
+ },
61
+ }, []));
62
+ // resolve({ htmlElement });
63
+ }
64
+ });
65
+ },
66
+ beforeEach: async (subject, initializer, artificer, testResource, pm) => {
67
+ return new Promise((resolve, rej) => {
68
+ (0, react_dom_1.createPortal)(TesterantoComponent({
69
+ innerComp: () => testInput({
70
+ port: 3003,
71
+ address: "some-address",
72
+ secretKey: "someSecretKey",
73
+ abi: "foo",
74
+ }),
75
+ done: (reactElement) => {
85
76
  process.nextTick(() => {
86
- resolve({});
77
+ resolve(reactElement);
87
78
  });
88
- });
89
- },
79
+ },
80
+ }), subject.domRoot);
81
+ });
82
+ },
83
+ andWhen: function (s, whenCB) {
84
+ return new Promise((resolve, rej) => {
85
+ process.nextTick(() => {
86
+ resolve(whenCB()(s));
87
+ });
88
+ });
89
+ },
90
+ butThen: async function (s) {
91
+ return new Promise((resolve, rej) => {
92
+ process.nextTick(() => {
93
+ resolve(s);
94
+ });
95
+ });
96
+ },
97
+ afterEach: async function (store, ndx, artificer) {
98
+ return new Promise((resolve, rej) => {
99
+ process.nextTick(() => {
100
+ resolve({});
101
+ });
102
+ });
103
+ },
104
+ afterAll: (store, artificer) => {
105
+ return new Promise((resolve, rej) => {
106
+ process.nextTick(() => {
107
+ resolve({});
108
+ });
90
109
  });
110
+ },
111
+ });
112
+ document.addEventListener("DOMContentLoaded", function () {
113
+ const rootElement = document.getElementById("root");
114
+ if (rootElement) {
91
115
  }
92
116
  });
117
+ return t;
93
118
  };
@@ -1,88 +1,2 @@
1
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
2
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.testInterface = void 0;
30
- const react_1 = __importDefault(require("react"));
31
- const react_test_renderer_1 = __importStar(require("react-test-renderer"));
32
- // export const testInterface = {
33
- // beforeEach: function (CComponent, props): Promise<renderer.ReactTestRenderer> {
34
- // return new Promise((res, rej) => {
35
- // let component: renderer.ReactTestRenderer;
36
- // act(() => {
37
- // component = renderer.create(
38
- // CComponent(props)
39
- // );
40
- // res(component);
41
- // });
42
- // });
43
- // },
44
- // andWhen: async function (
45
- // renderer: renderer.ReactTestRenderer,
46
- // whenCB: () => (any) => any
47
- // ): Promise<renderer.ReactTestRenderer> {
48
- // await act(() => whenCB()(renderer));
49
- // return renderer
50
- // }
51
- // }
52
- exports.testInterface = {
53
- beforeEach: function (CComponent, propsAndChildren) {
54
- function Link(props) {
55
- const p = props.props;
56
- const c = props.children;
57
- return react_1.default.createElement(CComponent, p, c);
58
- }
59
- return new Promise((res, rej) => {
60
- (0, react_test_renderer_1.act)(async () => {
61
- const p = propsAndChildren;
62
- const y = new CComponent(p.props);
63
- const testRenderer = await react_test_renderer_1.default.create(Link(propsAndChildren));
64
- res(testRenderer);
65
- });
66
- });
67
- },
68
- andWhen: async function (renderer, whenCB) {
69
- // console.log("andWhen", whenCB)
70
- await (0, react_test_renderer_1.act)(() => whenCB(renderer));
71
- return renderer;
72
- },
73
- // andWhen: function (s: Store, whenCB): Promise<Selection> {
74
- // return whenCB()(s);
75
- // },
76
- butThen: async function (s, thenCB, tr) {
77
- console.log("butThen", thenCB.toString());
78
- return thenCB(s);
79
- },
80
- afterEach: async function (store, ndx, artificer) {
81
- // console.log("afterEach", store);
82
- return {};
83
- },
84
- afterAll: (store, artificer) => {
85
- // console.log("afterAll", store);
86
- return;
87
- },
88
- };
@@ -0,0 +1,68 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.testInterface = void 0;
30
+ const react_1 = __importDefault(require("react"));
31
+ const react_test_renderer_1 = __importStar(require("react-test-renderer"));
32
+ exports.testInterface = {
33
+ beforeEach: function (CComponent, propsAndChildren) {
34
+ function Link(props) {
35
+ const p = props.props;
36
+ const c = props.children;
37
+ return react_1.default.createElement(CComponent, p, c);
38
+ }
39
+ return new Promise((res, rej) => {
40
+ (0, react_test_renderer_1.act)(async () => {
41
+ const p = propsAndChildren;
42
+ const y = new CComponent(p.props);
43
+ const testRenderer = await react_test_renderer_1.default.create(Link(propsAndChildren));
44
+ res(testRenderer);
45
+ });
46
+ });
47
+ },
48
+ andWhen: async function (renderer, whenCB) {
49
+ // console.log("andWhen", whenCB)
50
+ await (0, react_test_renderer_1.act)(() => whenCB(renderer));
51
+ return renderer;
52
+ },
53
+ // andWhen: function (s: Store, whenCB): Promise<Selection> {
54
+ // return whenCB()(s);
55
+ // },
56
+ butThen: async function (s, thenCB, tr) {
57
+ console.log("butThen", thenCB.toString());
58
+ return thenCB(s);
59
+ },
60
+ afterEach: async function (store, ndx, artificer) {
61
+ // console.log("afterEach", store);
62
+ return {};
63
+ },
64
+ afterAll: (store, artificer) => {
65
+ // console.log("afterAll", store);
66
+ return;
67
+ },
68
+ };
@@ -4,5 +4,5 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const Node_js_1 = __importDefault(require("../../../Node.js"));
7
- const index_js_1 = require("./index.js");
8
- exports.default = (testImplementations, testSpecifications, testInput) => (0, Node_js_1.default)(testInput, testSpecifications, testImplementations, index_js_1.testInterface);
7
+ const interface_js_1 = require("./interface.js");
8
+ exports.default = (testImplementations, testSpecifications, testInput) => (0, Node_js_1.default)(testInput, testSpecifications, testImplementations, interface_js_1.testInterface);
@@ -4,5 +4,5 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const Web_js_1 = __importDefault(require("../../../Web.js"));
7
- const index_js_1 = require("./index.js");
8
- exports.default = (testImplementations, testSpecifications, testInput) => (0, Web_js_1.default)(testInput, testSpecifications, testImplementations, index_js_1.testInterface);
7
+ const interface_1 = require("./interface");
8
+ exports.default = (testImplementations, testSpecifications, testInput) => (0, Web_js_1.default)(testInput, testSpecifications, testImplementations, interface_1.testInterface);
@@ -0,0 +1,156 @@
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
+ const express_1 = __importDefault(require("express"));
7
+ const mongodb_1 = require("mongodb");
8
+ const mongoose_1 = __importDefault(require("mongoose"));
9
+ const path_1 = __importDefault(require("path"));
10
+ const fs_1 = __importDefault(require("fs"));
11
+ const mongooseSchemas_1 = require("./mongooseSchemas");
12
+ // export const chatChannel = new mongoose.Schema<IChatChannel>({
13
+ // // name: { type: String, required: true },
14
+ // users: [
15
+ // {
16
+ // type: mongoose.Schema.Types.ObjectId,
17
+ // ref: "User",
18
+ // required: true,
19
+ // },
20
+ // ],
21
+ // });
22
+ const app = (0, express_1.default)();
23
+ const port = 3000;
24
+ function findTextFiles(dir, fileList = []) {
25
+ const files = fs_1.default.readdirSync(dir);
26
+ for (const file of files) {
27
+ const filePath = path_1.default.join(dir, file);
28
+ const fileStat = fs_1.default.statSync(filePath);
29
+ if (fileStat.isDirectory() && file !== "node_modules") {
30
+ findTextFiles(filePath, fileList); // Recursive call for subdirectories
31
+ }
32
+ else if (path_1.default.extname(file) === ".txt") {
33
+ fileList.push(filePath);
34
+ }
35
+ else if (path_1.default.extname(file) === ".md") {
36
+ fileList.push(filePath);
37
+ }
38
+ }
39
+ return fileList;
40
+ }
41
+ function listToTree(fileList) {
42
+ const root = {
43
+ name: "root",
44
+ children: [],
45
+ };
46
+ for (const path of fileList) {
47
+ const parts = path.split("/");
48
+ let current = root;
49
+ for (let i = 0; i < parts.length; i++) {
50
+ const part = parts[i];
51
+ if (!part)
52
+ continue; // Skip empty parts (e.g., from leading '/')
53
+ let child = current.children.find((c) => c.name === part);
54
+ if (!child) {
55
+ child = { name: part, children: [] };
56
+ current.children.push(child);
57
+ }
58
+ current = child;
59
+ }
60
+ }
61
+ return root.children;
62
+ }
63
+ new mongodb_1.MongoClient(`mongodb://localhost:27017`).connect().then(async (conn) => {
64
+ const db = conn.db("taskman");
65
+ await mongoose_1.default.connect("mongodb://127.0.0.1:27017/taskman");
66
+ const usersModel = mongoose_1.default.model("User", mongooseSchemas_1.userSchema);
67
+ const kanbanModel = mongoose_1.default.model("Kanban", mongooseSchemas_1.kanbanSchema);
68
+ const ganttModel = mongoose_1.default.model("Gantt", mongooseSchemas_1.ganttSchema);
69
+ const featuresModel = mongoose_1.default.model("Features", mongooseSchemas_1.featuresSchema);
70
+ // const roomsModel = mongoose.model<any>("Rooms", RoomSchema);
71
+ // const huddleModdle = mongoose.model<any>("Huddles", HuddleSchema);
72
+ const MessagesModel = mongoose_1.default.model("Messages", mongooseSchemas_1.chatCatMessageSchema);
73
+ const ChatChannel = mongoose_1.default.model("ChatChannel", mongooseSchemas_1.channelsFeature);
74
+ const huddleModdle = ChatChannel.discriminator("Huddle", mongooseSchemas_1.HuddleSchema);
75
+ const roomsModel = ChatChannel.discriminator("Room", mongooseSchemas_1.RoomSchema);
76
+ app.get(`/preMergeCheck`, async (req, res) => {
77
+ const commit = req.params["commit"];
78
+ // res.json(await keyedModels[key].find({}));
79
+ });
80
+ app.get("/TaskManFrontend.js", (req, res) => {
81
+ res.sendFile(`${process.cwd()}/node_modules/testeranto/dist/prebuild/TaskManFrontEnd.js`);
82
+ });
83
+ app.get("/TaskManFrontEnd.css", (req, res) => {
84
+ res.sendFile(`${process.cwd()}/node_modules/testeranto/dist/prebuild/TaskManFrontEnd.css`);
85
+ });
86
+ app.get("/testeranto.json", (req, res) => {
87
+ res.sendFile(`${process.cwd()}/docs/testeranto.json`);
88
+ });
89
+ app.get("/", (req, res) => {
90
+ res.send(`<!DOCTYPE html>
91
+ <html lang="en">
92
+
93
+ <head>
94
+ <meta name="description" content="Webpage description goes here" />
95
+ <meta charset="utf-8" />
96
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
97
+ <meta name="author" content="" />
98
+
99
+ <title>TaskMan</title>
100
+
101
+ <link rel="stylesheet" href="/TaskManFrontEnd.css" />
102
+ <script type="module" src="/TaskManFrontEnd.js"></script>
103
+ </head>
104
+
105
+ <body><div id="root">react is loading</div></body>
106
+
107
+ </html>`);
108
+ });
109
+ app.listen(port, () => {
110
+ console.log(`Example app listening on port ${port}`);
111
+ });
112
+ ///////////////////////////////////////////////
113
+ const keyedModels = {
114
+ users: usersModel,
115
+ kanbans: kanbanModel,
116
+ features: featuresModel,
117
+ gantts: ganttModel,
118
+ rooms: roomsModel,
119
+ huddles: huddleModdle,
120
+ messages: MessagesModel,
121
+ };
122
+ Object.keys(keyedModels).forEach((key) => {
123
+ app.get(`/${key}.json`, async (req, res) => {
124
+ console.log("GET", key, keyedModels[key]);
125
+ res.json(await keyedModels[key].find({}));
126
+ });
127
+ app.get(`/${key}/:id.json`, async (req, res) => {
128
+ res.json(await keyedModels[key].find({ id: { $eq: req.params["id"] } }).toArray());
129
+ });
130
+ app.post(`/${key}/:id.json`, async (req, res) => {
131
+ res.json(await keyedModels[key].find({ id: { $eq: req.params["id"] } }).toArray());
132
+ });
133
+ app.post(`/${key}.json`, async (req, res) => {
134
+ res.json(await keyedModels[key].find({ id: { $eq: req.params["id"] } }).toArray());
135
+ });
136
+ });
137
+ app.use("/docs", express_1.default.static(path_1.default.join(process.cwd(), "docs")));
138
+ app.get("/docGal/fs.json", (req, res) => {
139
+ const directoryPath = "./"; // Replace with the desired directory path
140
+ // const textFiles = findTextFiles(directoryPath);
141
+ res.json(listToTree(findTextFiles(directoryPath)));
142
+ // res.send(`<!DOCTYPE html>
143
+ // <html lang="en">
144
+ // <head>
145
+ // <meta name="description" content="Webpage description goes here" />
146
+ // <meta charset="utf-8" />
147
+ // <meta name="viewport" content="width=device-width, initial-scale=1" />
148
+ // <meta name="author" content="" />
149
+ // <title>TaskMan</title>
150
+ // <link rel="stylesheet" href="/TaskManFrontEnd.css" />
151
+ // <script type="module" src="/TaskManFrontEnd.js"></script>
152
+ // </head>
153
+ // <body><div id="root">react is loading</div></body>
154
+ // </html>`);
155
+ });
156
+ });
@@ -1,4 +1,2 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- // export type ITTestShape = {
4
- // };
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = (config) => {
4
4
  return {
5
+ // packages: "external",
5
6
  target: "esnext",
6
7
  format: "esm",
7
8
  splitting: true,