testeranto 0.100.0 → 0.110.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 (285) hide show
  1. package/README.md +1 -0
  2. package/bundle.js +80 -30
  3. package/dist/common/{dist/module/src/Init.js → Init.js} +28 -0
  4. package/dist/common/{src/PM → PM}/main.js +138 -95
  5. package/dist/common/ReportServer.js +22 -0
  6. package/dist/common/{src/SubPackages → SubPackages}/react/jsx/index.js +0 -12
  7. package/dist/common/{src/SubPackages → SubPackages}/react-dom/component/node.js +3 -16
  8. package/dist/common/{src/SubPackages → SubPackages}/react-dom/component/web.js +3 -3
  9. package/dist/common/{src/SubPackages → SubPackages}/react-dom/jsx/node.js +1 -1
  10. package/dist/common/{src/SubPackages → SubPackages}/react-dom/jsx/web.js +41 -30
  11. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/MemoExoticComponent/node.js +17 -7
  12. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/component/interface.js +17 -7
  13. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/fc/node.js +17 -7
  14. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/fc/web.js +17 -7
  15. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/jsx/index.js +18 -14
  16. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/jsx-promised/index.js +17 -7
  17. package/dist/common/build.js +222 -0
  18. package/dist/common/{src/defaultConfig.js → defaultConfig.js} +1 -0
  19. package/dist/common/esbuildConfigs/eslint-formatter-testeranto.js +6 -0
  20. package/dist/common/esbuildConfigs/inputFilesPlugin.js +27 -0
  21. package/dist/common/{src/esbuildConfigs → esbuildConfigs}/node.js +2 -10
  22. package/dist/common/{src/esbuildConfigs → esbuildConfigs}/web.js +2 -13
  23. package/dist/common/{src/init-docs.js → init-docs.js} +20 -10
  24. package/dist/common/{src/lib → lib}/abstractBase.js +6 -1
  25. package/dist/common/{src/lib → lib}/basebuilder.js +23 -10
  26. package/dist/common/{src/lib → lib}/classBuilder.js +1 -3
  27. package/dist/common/{src/lib → lib}/core.js +26 -10
  28. package/dist/common/{src/lib → lib}/index.js +0 -1
  29. package/dist/common/{src/lib → lib}/types.js +0 -1
  30. package/dist/common/run.js +297 -0
  31. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  32. package/dist/common/utils.js +43 -0
  33. package/dist/module/Footer.js +4 -0
  34. package/dist/module/Init.js +63 -0
  35. package/dist/module/{src/PM → PM}/main.js +119 -86
  36. package/dist/module/ReportClient.js +97 -0
  37. package/dist/module/ReportServer.js +17 -0
  38. package/dist/module/SubPackages/react/jsx/index.js +15 -0
  39. package/dist/module/{src/SubPackages → SubPackages}/react-dom/component/node.js +3 -16
  40. package/dist/module/{src/SubPackages → SubPackages}/react-dom/component/web.js +3 -3
  41. package/dist/module/{src/SubPackages → SubPackages}/react-dom/jsx/node.js +3 -3
  42. package/dist/module/{src/SubPackages → SubPackages}/react-dom/jsx/web.js +24 -23
  43. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/jsx/index.js +1 -7
  44. package/dist/module/TestReport.js +91 -0
  45. package/dist/module/build.js +184 -0
  46. package/dist/module/{src/defaultConfig.js → defaultConfig.js} +1 -0
  47. package/dist/module/esbuildConfigs/eslint-formatter-testeranto.js +3 -0
  48. package/dist/module/esbuildConfigs/inputFilesPlugin.js +22 -0
  49. package/dist/module/{src/esbuildConfigs → esbuildConfigs}/node.js +2 -10
  50. package/dist/module/{src/esbuildConfigs → esbuildConfigs}/web.js +2 -13
  51. package/dist/module/{src/init-docs.js → init-docs.js} +1 -1
  52. package/dist/module/{src/lib → lib}/abstractBase.js +6 -1
  53. package/dist/module/{src/lib → lib}/basebuilder.js +23 -10
  54. package/dist/module/{src/lib → lib}/classBuilder.js +1 -3
  55. package/dist/module/{src/lib → lib}/core.js +26 -10
  56. package/dist/module/{src/lib → lib}/index.js +0 -1
  57. package/dist/module/run.js +259 -0
  58. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  59. package/dist/module/utils.js +29 -0
  60. package/dist/prebuild/ReportClient.css +11367 -0
  61. package/dist/prebuild/ReportClient.js +23641 -0
  62. package/dist/prebuild/ReportServer.mjs +16 -0
  63. package/dist/prebuild/TestReport.css +11367 -0
  64. package/dist/prebuild/TestReport.js +27484 -0
  65. package/dist/prebuild/build.mjs +376 -0
  66. package/dist/prebuild/esbuildConfigs/eslint-formatter-testeranto.mjs +9 -0
  67. package/dist/prebuild/init-docs.mjs +64 -8
  68. package/dist/prebuild/{cli2.mjs → run.mjs} +353 -81
  69. package/dist/tsconfig.tsbuildinfo +1 -0
  70. package/dist/types/Node.d.ts +12 -0
  71. package/dist/types/{src/PM → PM}/index.d.ts +1 -1
  72. package/dist/types/{src/PM → PM}/main.d.ts +12 -9
  73. package/dist/types/{src/PM → PM}/node.d.ts +2 -4
  74. package/dist/types/{src/PM → PM}/web.d.ts +2 -4
  75. package/dist/types/SubPackages/react/component/node.d.ts +7 -0
  76. package/dist/types/SubPackages/react/component/web.d.ts +7 -0
  77. package/dist/types/SubPackages/react/jsx/index.d.ts +12 -0
  78. package/dist/types/SubPackages/react/jsx/node.d.ts +4 -0
  79. package/dist/types/SubPackages/react/jsx/web.d.ts +4 -0
  80. package/dist/types/SubPackages/react-dom/component/node.d.ts +11 -0
  81. package/dist/types/SubPackages/react-dom/component/web.d.ts +20 -0
  82. package/dist/types/SubPackages/react-dom/jsx/index.d.ts +6 -0
  83. package/dist/types/SubPackages/react-dom/jsx/node.d.ts +7 -0
  84. package/dist/types/SubPackages/react-dom/jsx/web.d.ts +5 -0
  85. package/dist/types/SubPackages/react-test-renderer/MemoExoticComponent/node.d.ts +6 -0
  86. package/dist/types/SubPackages/react-test-renderer/component/index.d.ts +13 -0
  87. package/dist/types/SubPackages/react-test-renderer/component/node.d.ts +4 -0
  88. package/dist/types/SubPackages/react-test-renderer/component/web.d.ts +4 -0
  89. package/dist/types/SubPackages/react-test-renderer/fc/node.d.ts +8 -0
  90. package/dist/types/SubPackages/react-test-renderer/fc/web.d.ts +9 -0
  91. package/dist/types/SubPackages/react-test-renderer/jsx/index.d.ts +16 -0
  92. package/dist/types/SubPackages/react-test-renderer/jsx/node.d.ts +9 -0
  93. package/dist/types/SubPackages/react-test-renderer/jsx/web.d.ts +9 -0
  94. package/dist/types/SubPackages/react-test-renderer/jsx-promised/index.d.ts +15 -0
  95. package/dist/types/SubPackages/react-test-renderer/jsx-promised/node.d.ts +5 -0
  96. package/dist/types/SubPackages/react-test-renderer/jsx-promised/web.d.ts +5 -0
  97. package/dist/types/Types.d.ts +61 -0
  98. package/dist/types/Web.d.ts +9 -0
  99. package/dist/types/defaultConfig.d.ts +3 -0
  100. package/dist/types/esbuildConfigs/eslint-formatter-testeranto.d.ts +2 -0
  101. package/dist/types/{src/esbuildConfigs → esbuildConfigs}/index.d.ts +1 -1
  102. package/dist/types/{src/esbuildConfigs → esbuildConfigs}/inputFilesPlugin.d.ts +0 -1
  103. package/dist/types/{src/esbuildConfigs → esbuildConfigs}/node.d.ts +1 -1
  104. package/dist/types/{src/esbuildConfigs → esbuildConfigs}/web.d.ts +1 -1
  105. package/dist/types/init-docs.d.ts +1 -0
  106. package/dist/types/lib/abstractBase.d.ts +110 -0
  107. package/dist/types/lib/basebuilder.d.ts +27 -0
  108. package/dist/types/lib/classBuilder.d.ts +7 -0
  109. package/dist/types/lib/core.d.ts +7 -0
  110. package/dist/types/lib/index.d.ts +83 -0
  111. package/dist/types/lib/types.d.ts +14 -0
  112. package/dist/types/run.d.ts +1 -0
  113. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  114. package/dist/types/utils.d.ts +9 -0
  115. package/package.json +40 -32
  116. package/src/Footer.tsx +4 -0
  117. package/src/Init.ts +48 -0
  118. package/src/Node.ts +23 -17
  119. package/src/PM/index.ts +1 -1
  120. package/src/PM/main.ts +143 -101
  121. package/src/PM/node.ts +2 -2
  122. package/src/PM/web.ts +1 -1
  123. package/src/ReportClient.tsx +155 -0
  124. package/src/ReportServer.ts +21 -0
  125. package/src/SubPackages/react/component/node.ts +68 -24
  126. package/src/SubPackages/react/component/web.ts +68 -25
  127. package/src/SubPackages/react/jsx/index.ts +39 -18
  128. package/src/SubPackages/react/jsx/node.ts +12 -10
  129. package/src/SubPackages/react/jsx/web.ts +27 -14
  130. package/src/SubPackages/react-dom/component/node.ts +42 -50
  131. package/src/SubPackages/react-dom/component/web.ts +28 -10
  132. package/src/SubPackages/react-dom/jsx/node.ts +54 -56
  133. package/src/SubPackages/react-dom/jsx/web.ts +55 -42
  134. package/src/SubPackages/react-test-renderer/MemoExoticComponent/node.ts +23 -7
  135. package/src/SubPackages/react-test-renderer/component/index.ts +38 -5
  136. package/src/SubPackages/react-test-renderer/component/node.ts +24 -5
  137. package/src/SubPackages/react-test-renderer/component/web.ts +22 -5
  138. package/src/SubPackages/react-test-renderer/fc/node.ts +41 -7
  139. package/src/SubPackages/react-test-renderer/fc/web.ts +43 -11
  140. package/src/SubPackages/react-test-renderer/jsx/index.ts +39 -16
  141. package/src/SubPackages/react-test-renderer/jsx/node.ts +8 -6
  142. package/src/SubPackages/react-test-renderer/jsx/web.ts +22 -5
  143. package/src/SubPackages/react-test-renderer/jsx-promised/index.ts +39 -6
  144. package/src/SubPackages/react-test-renderer/jsx-promised/node.ts +27 -10
  145. package/src/SubPackages/react-test-renderer/jsx-promised/web.ts +26 -12
  146. package/src/TestReport.tsx +176 -0
  147. package/src/Types.ts +63 -309
  148. package/src/Web.ts +24 -18
  149. package/src/build.ts +240 -0
  150. package/src/defaultConfig.ts +2 -1
  151. package/src/esbuildConfigs/eslint-formatter-testeranto.ts +5 -0
  152. package/src/esbuildConfigs/featuresPlugin.ts +0 -1
  153. package/src/esbuildConfigs/index.ts +1 -1
  154. package/src/esbuildConfigs/inputFilesPlugin.ts +2 -135
  155. package/src/esbuildConfigs/node.ts +4 -13
  156. package/src/esbuildConfigs/web.ts +3 -19
  157. package/src/init-docs.ts +2 -1
  158. package/src/lib/abstractBase.ts +82 -80
  159. package/src/lib/basebuilder.ts +57 -45
  160. package/src/lib/classBuilder.ts +15 -15
  161. package/src/lib/core.ts +44 -35
  162. package/src/lib/index.ts +47 -98
  163. package/src/lib/readme.md +12 -0
  164. package/src/lib/types.ts +53 -70
  165. package/src/run.ts +398 -0
  166. package/src/style.css +8 -0
  167. package/src/utils.ts +74 -2
  168. package/tsc.log +106 -0
  169. package/Bundle.Dockerfile +0 -52
  170. package/bin/init-docs.js +0 -24
  171. package/dist/common/src/Init.js +0 -40
  172. package/dist/common/src/SubPackages/puppeteer.js +0 -21
  173. package/dist/common/src/cli.js +0 -439
  174. package/dist/common/src/cli2.js +0 -144
  175. package/dist/common/src/esbuildConfigs/inputFilesPlugin.js +0 -99
  176. package/dist/common/src/utils.js +0 -16
  177. package/dist/common/testeranto.js +0 -15
  178. package/dist/module/src/Init.js +0 -35
  179. package/dist/module/src/SubPackages/puppeteer.js +0 -16
  180. package/dist/module/src/SubPackages/react/jsx/index.js +0 -27
  181. package/dist/module/src/cli.js +0 -411
  182. package/dist/module/src/cli2.js +0 -116
  183. package/dist/module/src/esbuildConfigs/inputFilesPlugin.js +0 -94
  184. package/dist/module/src/lib/types.js +0 -2
  185. package/dist/module/src/utils.js +0 -9
  186. package/dist/module/testeranto.js +0 -13
  187. package/dist/prebuild/cli.mjs +0 -1491
  188. package/dist/types/dist/module/src/Init.d.ts +0 -2
  189. package/dist/types/src/Node.d.ts +0 -13
  190. package/dist/types/src/SubPackages/puppeteer.d.ts +0 -6
  191. package/dist/types/src/SubPackages/react/component/node.d.ts +0 -7
  192. package/dist/types/src/SubPackages/react/component/web.d.ts +0 -7
  193. package/dist/types/src/SubPackages/react/jsx/index.d.ts +0 -12
  194. package/dist/types/src/SubPackages/react/jsx/node.d.ts +0 -4
  195. package/dist/types/src/SubPackages/react/jsx/web.d.ts +0 -4
  196. package/dist/types/src/SubPackages/react-dom/component/node.d.ts +0 -12
  197. package/dist/types/src/SubPackages/react-dom/component/web.d.ts +0 -11
  198. package/dist/types/src/SubPackages/react-dom/jsx/index.d.ts +0 -7
  199. package/dist/types/src/SubPackages/react-dom/jsx/node.d.ts +0 -6
  200. package/dist/types/src/SubPackages/react-dom/jsx/web.d.ts +0 -5
  201. package/dist/types/src/SubPackages/react-test-renderer/MemoExoticComponent/node.d.ts +0 -5
  202. package/dist/types/src/SubPackages/react-test-renderer/component/index.d.ts +0 -13
  203. package/dist/types/src/SubPackages/react-test-renderer/component/node.d.ts +0 -8
  204. package/dist/types/src/SubPackages/react-test-renderer/component/web.d.ts +0 -3
  205. package/dist/types/src/SubPackages/react-test-renderer/fc/node.d.ts +0 -8
  206. package/dist/types/src/SubPackages/react-test-renderer/fc/web.d.ts +0 -8
  207. package/dist/types/src/SubPackages/react-test-renderer/jsx/index.d.ts +0 -17
  208. package/dist/types/src/SubPackages/react-test-renderer/jsx/node.d.ts +0 -9
  209. package/dist/types/src/SubPackages/react-test-renderer/jsx/web.d.ts +0 -8
  210. package/dist/types/src/SubPackages/react-test-renderer/jsx-promised/index.d.ts +0 -16
  211. package/dist/types/src/SubPackages/react-test-renderer/jsx-promised/node.d.ts +0 -4
  212. package/dist/types/src/SubPackages/react-test-renderer/jsx-promised/web.d.ts +0 -4
  213. package/dist/types/src/Types.d.ts +0 -90
  214. package/dist/types/src/Web.d.ts +0 -10
  215. package/dist/types/src/defaultConfig.d.ts +0 -3
  216. package/dist/types/src/lib/abstractBase.d.ts +0 -110
  217. package/dist/types/src/lib/basebuilder.d.ts +0 -27
  218. package/dist/types/src/lib/classBuilder.d.ts +0 -7
  219. package/dist/types/src/lib/core.d.ts +0 -8
  220. package/dist/types/src/lib/index.d.ts +0 -60
  221. package/dist/types/src/lib/types.d.ts +0 -40
  222. package/dist/types/src/utils.d.ts +0 -2
  223. package/dist/types/testeranto.d.ts +0 -16
  224. package/docker-compose.yml +0 -37
  225. package/src/SubPackages/puppeteer.ts +0 -51
  226. package/src/cli.ts +0 -535
  227. package/src/cli2.ts +0 -157
  228. package/testeranto.ts +0 -13
  229. package/dist/common/{src/Node.js → Node.js} +0 -0
  230. package/dist/common/{src/PM → PM}/index.js +0 -0
  231. package/dist/common/{src/PM → PM}/node.js +0 -0
  232. package/dist/common/{src/PM → PM}/web.js +0 -0
  233. package/dist/common/{src/SubPackages → SubPackages}/react/component/node.js +0 -0
  234. package/dist/common/{src/SubPackages → SubPackages}/react/component/web.js +0 -0
  235. package/dist/common/{src/SubPackages → SubPackages}/react/jsx/node.js +0 -0
  236. package/dist/common/{src/SubPackages → SubPackages}/react/jsx/web.js +0 -0
  237. package/dist/common/{src/SubPackages → SubPackages}/react-dom/jsx/index.js +0 -0
  238. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/component/index.js +0 -0
  239. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/component/node.js +0 -0
  240. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/component/web.js +0 -0
  241. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/jsx/node.js +0 -0
  242. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/jsx/web.js +0 -0
  243. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/jsx-promised/node.js +1 -1
  244. package/dist/common/{src/SubPackages → SubPackages}/react-test-renderer/jsx-promised/web.js +0 -0
  245. package/dist/common/{src/Types.js → Types.js} +0 -0
  246. package/dist/common/{src/Web.js → Web.js} +0 -0
  247. package/dist/common/{src/esbuildConfigs → esbuildConfigs}/featuresPlugin.js +0 -0
  248. package/dist/common/{src/esbuildConfigs → esbuildConfigs}/index.js +0 -0
  249. package/dist/common/{src/puppeteerConfiger.js → puppeteerConfiger.js} +0 -0
  250. package/dist/common/{src/web.html.js → web.html.js} +0 -0
  251. package/dist/module/{src/Node.js → Node.js} +0 -0
  252. package/dist/module/{src/PM → PM}/index.js +0 -0
  253. package/dist/module/{src/PM → PM}/node.js +0 -0
  254. package/dist/module/{src/PM → PM}/web.js +0 -0
  255. package/dist/module/{src/SubPackages → SubPackages}/react/component/node.js +0 -0
  256. package/dist/module/{src/SubPackages → SubPackages}/react/component/web.js +0 -0
  257. package/dist/module/{src/SubPackages → SubPackages}/react/jsx/node.js +0 -0
  258. package/dist/module/{src/SubPackages → SubPackages}/react/jsx/web.js +0 -0
  259. package/dist/module/{src/SubPackages → SubPackages}/react-dom/jsx/index.js +0 -0
  260. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/MemoExoticComponent/node.js +0 -0
  261. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/component/index.js +0 -0
  262. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/component/interface.js +0 -0
  263. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/component/node.js +0 -0
  264. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/component/web.js +0 -0
  265. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/fc/node.js +0 -0
  266. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/fc/web.js +0 -0
  267. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/jsx/node.js +0 -0
  268. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/jsx/web.js +0 -0
  269. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/jsx-promised/index.js +0 -0
  270. package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/jsx-promised/node.js +1 -1
  271. /package/dist/module/{src/SubPackages → SubPackages}/react-test-renderer/jsx-promised/web.js +0 -0
  272. /package/dist/module/{src/Types.js → Types.js} +0 -0
  273. /package/dist/module/{src/Web.js → Web.js} +0 -0
  274. /package/dist/module/{src/esbuildConfigs → esbuildConfigs}/featuresPlugin.js +0 -0
  275. /package/dist/module/{src/esbuildConfigs → esbuildConfigs}/index.js +0 -0
  276. /package/dist/{types/src/cli.d.ts → module/lib/types.js} +0 -0
  277. /package/dist/module/{src/puppeteerConfiger.js → puppeteerConfiger.js} +0 -0
  278. /package/dist/module/{src/web.html.js → web.html.js} +0 -0
  279. /package/dist/types/{src/Init.d.ts → Init.d.ts} +0 -0
  280. /package/dist/types/{src/cli2.d.ts → ReportServer.d.ts} +0 -0
  281. /package/dist/types/{src/SubPackages → SubPackages}/react-test-renderer/component/interface.d.ts +0 -0
  282. /package/dist/types/{src/init-docs.d.ts → build.d.ts} +0 -0
  283. /package/dist/types/{src/esbuildConfigs → esbuildConfigs}/featuresPlugin.d.ts +0 -0
  284. /package/dist/types/{src/puppeteerConfiger.d.ts → puppeteerConfiger.d.ts} +0 -0
  285. /package/dist/types/{src/web.html.d.ts → web.html.d.ts} +0 -0
@@ -3,7 +3,8 @@ import React from "react";
3
3
  import Testeranto from "../../../Node.js";
4
4
 
5
5
  import {
6
- IBaseTest,
6
+ Ibdd_in,
7
+ Ibdd_out,
7
8
  ITestImplementation,
8
9
  ITestSpecification,
9
10
  } from "../../../Types";
@@ -13,31 +14,74 @@ type ISelection = React.CElement<any, any>;
13
14
  type IStore = React.CElement<any, any>;
14
15
  type ISubject = React.CElement<any, any>;
15
16
 
16
- export type IImpl<ISpec extends IBaseTest, IState> = ITestImplementation<
17
- ISpec,
18
- object
19
- >;
17
+ export type IImpl<
18
+ I extends Ibdd_in<
19
+ unknown,
20
+ unknown,
21
+ unknown,
22
+ unknown,
23
+ unknown,
24
+ unknown,
25
+ unknown
26
+ >,
27
+ O extends Ibdd_out<
28
+ Record<string, any>,
29
+ Record<string, any>,
30
+ Record<string, any>,
31
+ Record<string, any>,
32
+ Record<string, any>
33
+ >
34
+ > = ITestImplementation<I, O>;
20
35
 
21
- export type ISpec<T extends IBaseTest> = ITestSpecification<T>;
36
+ export type ISpec<
37
+ I extends Ibdd_in<
38
+ unknown,
39
+ unknown,
40
+ unknown,
41
+ unknown,
42
+ unknown,
43
+ unknown,
44
+ unknown
45
+ >,
46
+ O extends Ibdd_out<
47
+ Record<string, any>,
48
+ Record<string, any>,
49
+ Record<string, any>,
50
+ Record<string, any>,
51
+ Record<string, any>
52
+ >
53
+ > = ITestSpecification<I, O>;
22
54
 
23
- export default <ITestShape extends IBaseTest, IState>(
24
- testImplementations: ITestImplementation<ITestShape>,
25
- testSpecifications: ISpec<ITestShape>,
55
+ export default <
56
+ I extends Ibdd_in<
57
+ unknown,
58
+ unknown,
59
+ unknown,
60
+ unknown,
61
+ unknown,
62
+ unknown,
63
+ unknown
64
+ >,
65
+ O extends Ibdd_out<
66
+ Record<string, any>,
67
+ Record<string, any>,
68
+ Record<string, any>,
69
+ Record<string, any>,
70
+ Record<string, any>
71
+ >
72
+ >(
73
+ testImplementations: ITestImplementation<I, O>,
74
+ testSpecifications: ISpec<I, O>,
26
75
  testInput: IInput
27
76
  ) => {
28
- return Testeranto<ITestShape>(
29
- testInput,
30
- testSpecifications,
31
- testImplementations,
32
- {
33
- beforeEach: async (): Promise<IStore> => {
34
- return new Promise((resolve, rej) => {
35
- resolve(React.createElement(testInput, {}, []));
36
- });
37
- },
38
- andWhen: function (s: IStore, whenCB): Promise<ISelection> {
39
- return whenCB()(s);
40
- },
41
- }
42
- );
77
+ return Testeranto<I, O>(testInput, testSpecifications, testImplementations, {
78
+ beforeEach: async (): Promise<IStore> => {
79
+ return new Promise((resolve, rej) => {
80
+ resolve(React.createElement(testInput, {}, []));
81
+ });
82
+ },
83
+ andWhen: function (s: IStore, whenCB): Promise<ISelection> {
84
+ return whenCB()(s);
85
+ },
86
+ });
43
87
  };
@@ -3,7 +3,8 @@ import React from "react";
3
3
  import Testeranto from "../../../Web.js";
4
4
 
5
5
  import {
6
- IBaseTest,
6
+ Ibdd_in,
7
+ Ibdd_out,
7
8
  ITestImplementation,
8
9
  ITestSpecification,
9
10
  } from "../../../Types";
@@ -11,33 +12,75 @@ import {
11
12
  type IInput = typeof React.Component;
12
13
  type ISelection = React.CElement<any, any>;
13
14
  type Store = React.CElement<any, any>;
14
- // type Subject = React.CElement<any, any>;
15
15
 
16
- export type IImpl<ISpec extends IBaseTest, IState> = ITestImplementation<
17
- ISpec,
18
- object
19
- >;
16
+ export type IImpl<
17
+ I extends Ibdd_in<
18
+ unknown,
19
+ unknown,
20
+ unknown,
21
+ unknown,
22
+ unknown,
23
+ unknown,
24
+ unknown
25
+ >,
26
+ O extends Ibdd_out<
27
+ Record<string, any>,
28
+ Record<string, any>,
29
+ Record<string, any>,
30
+ Record<string, any>,
31
+ Record<string, any>
32
+ >
33
+ > = ITestImplementation<I, O>;
20
34
 
21
- export type ISpec<T extends IBaseTest> = ITestSpecification<T>;
35
+ export type ISpec<
36
+ I extends Ibdd_in<
37
+ unknown,
38
+ unknown,
39
+ unknown,
40
+ unknown,
41
+ unknown,
42
+ unknown,
43
+ unknown
44
+ >,
45
+ O extends Ibdd_out<
46
+ Record<string, any>,
47
+ Record<string, any>,
48
+ Record<string, any>,
49
+ Record<string, any>,
50
+ Record<string, any>
51
+ >
52
+ > = ITestSpecification<I, O>;
22
53
 
23
- export default <ITestShape extends IBaseTest>(
24
- testImplementations: ITestImplementation<ITestShape>,
25
- testSpecifications: ISpec<ITestShape>,
54
+ export default <
55
+ I extends Ibdd_in<
56
+ unknown,
57
+ unknown,
58
+ unknown,
59
+ unknown,
60
+ unknown,
61
+ unknown,
62
+ unknown
63
+ >,
64
+ O extends Ibdd_out<
65
+ Record<string, any>,
66
+ Record<string, any>,
67
+ Record<string, any>,
68
+ Record<string, any>,
69
+ Record<string, any>
70
+ >
71
+ >(
72
+ testImplementations: ITestImplementation<I, O>,
73
+ testSpecifications: ISpec<I, O>,
26
74
  testInput: IInput
27
75
  ) => {
28
- return Testeranto<ITestShape>(
29
- testInput,
30
- testSpecifications,
31
- testImplementations,
32
- {
33
- beforeEach: async (): Promise<Store> => {
34
- return new Promise((resolve, rej) => {
35
- resolve(React.createElement(testInput, {}, []));
36
- });
37
- },
38
- andWhen: function (s: Store, whenCB): Promise<ISelection> {
39
- return whenCB()(s);
40
- },
41
- }
42
- );
76
+ return Testeranto<I, O>(testInput, testSpecifications, testImplementations, {
77
+ beforeEach: async (): Promise<Store> => {
78
+ return new Promise((resolve, rej) => {
79
+ resolve(React.createElement(testInput, {}, []));
80
+ });
81
+ },
82
+ andWhen: function (s: Store, whenCB): Promise<ISelection> {
83
+ return whenCB()(s);
84
+ },
85
+ });
43
86
  };
@@ -2,7 +2,8 @@ import { CElement } from "react";
2
2
  import React from "react";
3
3
 
4
4
  import {
5
- IBaseTest,
5
+ Ibdd_in,
6
+ Ibdd_out,
6
7
  IPartialInterface,
7
8
  ITestImplementation,
8
9
  ITestSpecification,
@@ -16,30 +17,50 @@ export type ISelection = CElement<any, any>;
16
17
  export type IStore = CElement<any, any>;
17
18
  export type ISubject = CElement<any, any>;
18
19
 
19
- export type ITestImpl<ITestShape extends IBaseTest> =
20
- ITestImplementation<ITestShape>;
20
+ export type ITestImpl<
21
+ I extends Ibdd_in<
22
+ unknown,
23
+ unknown,
24
+ unknown,
25
+ unknown,
26
+ unknown,
27
+ unknown,
28
+ unknown
29
+ >,
30
+ O extends Ibdd_out<
31
+ Record<string, any>,
32
+ Record<string, any>,
33
+ Record<string, any>,
34
+ Record<string, any>,
35
+ Record<string, any>
36
+ >
37
+ > = ITestImplementation<I, O>;
21
38
 
22
- export type ITestSpec<ITestShape extends IBaseTest> =
23
- ITestSpecification<ITestShape>;
39
+ export type ITestSpec<
40
+ I extends Ibdd_in<
41
+ unknown,
42
+ unknown,
43
+ unknown,
44
+ unknown,
45
+ unknown,
46
+ unknown,
47
+ unknown
48
+ >,
49
+ O extends Ibdd_out<
50
+ Record<string, any>,
51
+ Record<string, any>,
52
+ Record<string, any>,
53
+ Record<string, any>,
54
+ Record<string, any>
55
+ >
56
+ > = ITestSpecification<I, O>;
24
57
 
25
58
  export const testInterface: IPartialInterface<any> = {
26
- // beforeAll: async (proto, testResource, artificer, pm): Promise<IStore> => {
27
- // return React.createElement(proto);
28
- // // return new Promise((resolve, rej) => {
29
- // // resolve(x());
30
- // // });
31
- // },
32
- // beforeEach: async (subject, initializer, artificer): Promise<IStore> => {
33
- // return new Promise((resolve, rej) => {
34
- // resolve(React.createElement(subject));
35
- // });
36
- // },
37
- andWhen: async (s: IStore, whenCB): Promise<IStore> => {
59
+ andWhen: async (s, whenCB) => {
38
60
  await whenCB(s());
39
61
  return new Promise((resolve, rej) => {
40
62
  resolve(React.createElement(s));
41
63
  });
42
- // return whenCB(s);
43
64
  },
44
65
  butThen: async (subject, thenCB) => {
45
66
  await thenCB(subject());
@@ -1,5 +1,5 @@
1
1
  import Testeranto from "../../../Node.js";
2
- import { IBaseTest, IPartialInterface } from "../../../Types";
2
+ import { Ibdd_in, Ibdd_out, IPartialInterface } from "../../../Types";
3
3
 
4
4
  import {
5
5
  ITestImpl,
@@ -9,14 +9,16 @@ import {
9
9
  } from "./index.js";
10
10
 
11
11
  export default <
12
- ITestShape extends IBaseTest<
13
- IInput,
14
- number,
15
- number,
16
- number,
12
+ I extends Ibdd_in<
17
13
  unknown,
18
14
  unknown,
19
15
  unknown,
16
+ unknown,
17
+ unknown,
18
+ unknown,
19
+ unknown
20
+ >,
21
+ O extends Ibdd_out<
20
22
  Record<string, any>,
21
23
  Record<string, any>,
22
24
  Record<string, any>,
@@ -24,12 +26,12 @@ export default <
24
26
  Record<string, any>
25
27
  >
26
28
  >(
27
- testImplementations: ITestImpl<ITestShape>,
28
- testSpecifications: ITestSpec<ITestShape>,
29
+ testImplementations: ITestImpl<I, O>,
30
+ testSpecifications: ITestSpec<I, O>,
29
31
  testInput: IInput,
30
- testInterface: IPartialInterface<ITestShape> = baseInterface
32
+ testInterface: IPartialInterface<I> = baseInterface
31
33
  ) => {
32
- return Testeranto<ITestShape>(
34
+ return Testeranto<I, O>(
33
35
  testInput,
34
36
  testSpecifications,
35
37
  testImplementations,
@@ -1,5 +1,6 @@
1
1
  import {
2
- IBaseTest,
2
+ Ibdd_in,
3
+ Ibdd_out,
3
4
  IPartialInterface,
4
5
  IPartialWebInterface,
5
6
  } from "../../../Types";
@@ -12,19 +13,31 @@ import {
12
13
  testInterface as baseInterface,
13
14
  } from "./index.js";
14
15
 
15
- export default <ITestShape extends IBaseTest>(
16
- testImplementations: ITestImpl<ITestShape>,
17
- testSpecifications: ITestSpec<ITestShape>,
16
+ export default <
17
+ I extends Ibdd_in<
18
+ unknown,
19
+ unknown,
20
+ unknown,
21
+ unknown,
22
+ unknown,
23
+ unknown,
24
+ unknown
25
+ >,
26
+ O extends Ibdd_out<
27
+ Record<string, any>,
28
+ Record<string, any>,
29
+ Record<string, any>,
30
+ Record<string, any>,
31
+ Record<string, any>
32
+ >
33
+ >(
34
+ testImplementations: ITestImpl<I, O>,
35
+ testSpecifications: ITestSpec<I, O>,
18
36
  testInput: IInput,
19
- testInterface: IPartialWebInterface<ITestShape>
37
+ testInterface: IPartialWebInterface<I>
20
38
  ) => {
21
- return Testeranto<ITestShape>(
22
- testInput,
23
- testSpecifications,
24
- testImplementations,
25
- {
26
- ...baseInterface,
27
- ...testInterface,
28
- }
29
- );
39
+ return Testeranto<I, O>(testInput, testSpecifications, testImplementations, {
40
+ ...baseInterface,
41
+ ...testInterface,
42
+ });
30
43
  };
@@ -8,69 +8,61 @@ import Stream from "stream";
8
8
  import Testeranto from "../../../Node.js";
9
9
 
10
10
  import {
11
- IBaseTest,
11
+ Ibdd_in,
12
+ Ibdd_out,
12
13
  ITestImplementation,
13
14
  ITestSpecification,
14
15
  } from "../../../Types";
15
16
 
16
17
  type IInput = typeof React.Component;
17
- type InitialState = unknown;
18
- type IWhenShape = any;
19
- export type IThenShape = any;
18
+
20
19
  export type ISelection = ReactNode;
21
20
  export type IStore = ReactNode;
22
21
  export type ISubject = ReactNode;
23
22
 
24
23
  export { renderToStaticMarkup, renderToStaticNodeStream, Stream };
25
24
 
26
- export default <ITestShape extends IBaseTest>(
27
- testImplementations: ITestImplementation<ITestShape>,
28
- testSpecifications: ITestSpecification<ITestShape>,
25
+ export default <
26
+ I extends Ibdd_in<
27
+ IInput,
28
+ ISubject,
29
+ IStore,
30
+ ISelection,
31
+ unknown,
32
+ (s: IStore) => IStore,
33
+ unknown
34
+ >,
35
+ O extends Ibdd_out<
36
+ Record<string, any>,
37
+ Record<string, any>,
38
+ Record<string, any>,
39
+ Record<string, any>,
40
+ Record<string, any>
41
+ >
42
+ >(
43
+ testImplementations: ITestImplementation<I, O>,
44
+ testSpecifications: ITestSpecification<I, O>,
29
45
  testInput: IInput
30
46
  ) => {
31
- return Testeranto<ITestShape>(
32
- testInput,
33
- testSpecifications,
34
- testImplementations,
35
- {
36
- // beforeAll: async (
37
- // prototype,
38
- // artificer
39
- // ): Promise<ISubject> => {
40
- // return await new Promise((resolve, rej) => {
41
- // const elem = document.getElementById("root");
42
- // if (elem) {
43
- // resolve({ htmlElement: elem });
44
- // }
45
-
46
- // })
47
- // },
48
- beforeEach: async (
49
- reactComponent,
50
- ndx,
51
- testRsource,
52
- artificer
53
- ): Promise<IStore> => {
54
- return new Promise((resolve, rej) => {
55
- // Ignore these type errors
56
- resolve(createElement(testInput));
57
- });
58
- },
59
- andWhen: async function (s: IStore, whenCB): Promise<ISelection> {
60
- return whenCB(s);
61
- // return s
62
- },
63
- butThen: async function (s: IStore): Promise<ISelection> {
64
- return s;
65
- },
66
- afterEach: async function (store: IStore, ndx, artificer) {
67
- return {};
68
- },
69
- afterAll: (store: IStore, artificer) => {
70
- return;
71
- },
72
- }
73
- );
47
+ return Testeranto<I, O>(testInput, testSpecifications, testImplementations, {
48
+ beforeEach: async (): Promise<IStore> => {
49
+ return new Promise((resolve, rej) => {
50
+ resolve(createElement(testInput));
51
+ });
52
+ },
53
+ andWhen: async function (s, whenCB) {
54
+ return whenCB(s);
55
+ },
56
+ butThen: async function (s) {
57
+ return s;
58
+ },
59
+ afterEach: async function () {
60
+ return {};
61
+ },
62
+ afterAll: () => {
63
+ return;
64
+ },
65
+ });
74
66
  };
75
67
 
76
68
  // type IInput = typeof React.Component;
@@ -3,7 +3,8 @@ import ReactDom from "react-dom/client";
3
3
 
4
4
  import Testeranto from "../../../Web.js";
5
5
  import {
6
- IBaseTest,
6
+ Ibdd_in,
7
+ Ibdd_out,
7
8
  IPartialInterface,
8
9
  IPartialWebInterface,
9
10
  ITestImplementation,
@@ -11,10 +12,10 @@ import {
11
12
  } from "../../../Types";
12
13
 
13
14
  type IInput = typeof React.Component;
14
- type InitialState = unknown;
15
15
  type ISelection = {
16
16
  htmlElement: HTMLElement;
17
17
  reactElement: any; //CElement<any, any>;
18
+ domRoot: ReactDom.Root;
18
19
  };
19
20
 
20
21
  export type IStore = {
@@ -29,10 +30,27 @@ type ISubject = {
29
30
  domRoot: ReactDom.Root;
30
31
  };
31
32
 
32
- export default <ITestShape extends IBaseTest, IWhen, IGiven>(
33
+ export default <
34
+ I extends Ibdd_in<
35
+ IInput,
36
+ ISubject,
37
+ ISelection,
38
+ IStore,
39
+ (s: IStore) => IStore,
40
+ (s: IStore) => IStore,
41
+ (s: IStore) => IStore
42
+ >,
43
+ O extends Ibdd_out<
44
+ Record<string, any>,
45
+ Record<string, any>,
46
+ Record<string, any>,
47
+ Record<string, any>,
48
+ Record<string, any>
49
+ >
50
+ >(
33
51
  testInput: IInput,
34
- testSpecifications: ITestSpecification<ITestShape>,
35
- testImplementations: ITestImplementation<ITestShape, any>,
52
+ testSpecifications: ITestSpecification<I, O>,
53
+ testImplementations: ITestImplementation<I, O>,
36
54
  testInterface?: IPartialWebInterface<any>
37
55
  ) => {
38
56
  class TesterantoComponent extends testInput {
@@ -47,7 +65,7 @@ export default <ITestShape extends IBaseTest, IWhen, IGiven>(
47
65
  }
48
66
  }
49
67
 
50
- const t = Testeranto<ITestShape>(
68
+ const t = Testeranto<I, O>(
51
69
  testInput,
52
70
  testSpecifications,
53
71
  testImplementations,
@@ -86,19 +104,19 @@ export default <ITestShape extends IBaseTest, IWhen, IGiven>(
86
104
  );
87
105
  });
88
106
  },
89
- andWhen: function (s: IStore, whenCB): Promise<ISelection> {
107
+ andWhen: async function (s, whenCB) {
90
108
  return whenCB(s);
91
109
  },
92
- butThen: async function (s: IStore, thenCB): Promise<ISelection> {
110
+ butThen: async function (s, thenCB) {
93
111
  return thenCB(s);
94
112
  },
95
113
  afterEach:
96
114
  testInterface?.afterEach ||
97
- async function (store: IStore, ndx, artificer, utils) {
115
+ async function (store: IStore, ndx, utils) {
98
116
  return store;
99
117
  },
100
118
 
101
- afterAll: async (store: IStore, artificer, utils) => {
119
+ afterAll: async (store: IStore, utils) => {
102
120
  // setTimeout(() => {
103
121
  // console.log("This will run after 1 second");
104
122
  // }, 1000); // 1000 milliseconds = 1 second