testeranto 0.202.0 → 0.203.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.
- package/README.md +23 -0
- package/UX/chache/index.md +11 -0
- package/dist/prebuild/App.css +78 -0
- package/dist/prebuild/App.js +4828 -2814
- package/dist/prebuild/testeranto.mjs +2650 -1037
- package/example/Calculator.go +63 -0
- package/example/Calculator.golingvu.adapter.go +81 -0
- package/example/Calculator.golingvu.go +67 -0
- package/example/Calculator.golingvu.implementation.go +95 -0
- package/example/Calculator.golingvu.specification.go +68 -0
- package/example/Calculator.pitono.adapter.py +68 -0
- package/example/Calculator.pitono.implementation.py +30 -0
- package/example/Calculator.pitono.specification.py +154 -0
- package/example/Calculator.pitono.test.py +47 -0
- package/example/Calculator.py +93 -0
- package/example/Calculator.test.adapter.ts +86 -0
- package/example/Calculator.test.implementation.ts +82 -0
- package/example/Calculator.test.specification.ts +213 -0
- package/example/Calculator.test.ts +13 -0
- package/example/Calculator.test.types.ts +50 -0
- package/example/Calculator.ts +130 -0
- package/example/README.md +1 -0
- package/example/base_suite_test.go +51 -0
- package/example/cmd/main.go +16 -0
- package/example/go.mod +9 -0
- package/example/main +0 -0
- package/example/test_example.py +143 -74
- package/{testeranto → example/testeranto}/bundles/golang/core/Calculator.golingvu.go +1 -1
- package/example/testeranto/metafiles/golang/core.json +198 -0
- package/go.mod +3 -1
- package/golingvu.tmp.txt +68 -0
- package/log.txt +85 -0
- package/package.json +50 -41
- package/scripts/build-example.ts +245 -0
- package/src/App.tsx +94 -44
- package/src/Helpo.tsx +89 -0
- package/src/PM/PM_WithBuild.ts +32 -20
- package/src/PM/PM_WithGit.ts +60 -13
- package/src/PM/PM_WithHelpo.ts +341 -0
- package/src/PM/PM_WithProcesses.ts +484 -223
- package/src/PM/PM_WithWebSocket.ts +210 -2
- package/src/PM/golingvuBuild.ts +56 -0
- package/src/PM/main.ts +570 -438
- package/src/PM/pitonoBuild.ts +56 -0
- package/src/PM/utils.ts +7 -1
- package/src/app.scss +102 -0
- package/src/components/pure/AppFrame.tsx +259 -149
- package/src/components/pure/GitIntegrationView.tsx +527 -238
- package/src/components/pure/HelpoChatDrawer.tsx +222 -0
- package/src/components/pure/MagicRobotModal.tsx +136 -0
- package/src/components/pure/ProcessDetails.tsx +99 -0
- package/src/components/pure/ProcessInput.tsx +67 -0
- package/src/components/pure/ProcessList.tsx +89 -0
- package/src/components/pure/ProcessLogs.tsx +54 -0
- package/src/components/pure/ProcessManager.tsx +37 -46
- package/src/components/pure/ProcessManagerView.tsx +42 -367
- package/src/components/pure/ProcessManagerViewTypes.ts +10 -0
- package/src/components/pure/ProcessSidebar.tsx +88 -0
- package/src/components/pure/ProcessTerminal.tsx +51 -0
- package/src/components/pure/SingleProcessView.tsx +140 -231
- package/src/components/pure/TerminalInput.tsx +73 -0
- package/src/components/pure/TerminalLogs.tsx +80 -0
- package/src/components/pure/TestPageView.tsx +21 -116
- package/src/components/pure/TestPageView_utils.tsx +2 -0
- package/src/components/stateful/DratoPage.tsx +457 -0
- package/src/components/stateful/GenericXMLEditor/AttributeEditor.tsx +87 -0
- package/src/components/stateful/GenericXMLEditor/Drawer.tsx +174 -0
- package/src/components/stateful/GenericXMLEditor/GenericPreview.tsx +160 -0
- package/src/components/stateful/GenericXMLEditor/GenericTextEditor.tsx +104 -0
- package/src/components/stateful/GenericXMLEditor/GenericTree.tsx +104 -0
- package/src/components/stateful/GenericXMLEditorPage.tsx +346 -0
- package/src/components/stateful/GitIntegrationPage.tsx +258 -3
- package/src/components/stateful/GrafeoPage.tsx +563 -0
- package/src/components/stateful/SVGEditor/SVGAttributesEditor.tsx +26 -8
- package/src/components/stateful/SVGEditor/SVGPreview.tsx +4 -2
- package/src/components/stateful/SVGEditorPage.tsx +195 -181
- package/src/components/stateful/SingleProcessPage.tsx +133 -131
- package/src/components/stateful/SkriboPage.tsx +765 -0
- package/src/components/stateful/TestPage.tsx +3 -2
- package/src/esbuildConfigs/node.ts +1 -1
- package/src/example/go.mod +9 -0
- package/src/example/main.go +61 -0
- package/src/golingvu/PM/golang_test.go +103 -0
- package/src/golingvu/README.md +186 -2
- package/src/golingvu/base_given.go +89 -2
- package/src/golingvu/base_suite.go +48 -2
- package/src/golingvu/go.mod +6 -0
- package/src/golingvu/golingvu.go +703 -29
- package/src/golingvu/types.go +0 -14
- package/src/helpo/directives.md +5 -0
- package/src/helpo/prompt.txt +38 -0
- package/src/hooks/useTerminalWebSocket.ts +49 -0
- package/src/lib/BaseGiven.ts +126 -28
- package/src/lib/BaseSuite.test/test.ts +97 -180
- package/src/lib/BaseSuite.ts +52 -10
- package/src/lib/BaseThen.ts +34 -38
- package/src/lib/BaseWhen.ts +9 -2
- package/src/lib/Tiposkripto.test/Tiposkripto.specification.ts +9 -8
- package/src/lib/Tiposkripto.ts +41 -11
- package/src/lib/pmProxy.ts +55 -18
- package/src/pitono/PM/python.py +165 -0
- package/src/pitono/Pitono.py +298 -0
- package/src/pitono/PitonoTest.py +25 -0
- package/src/pitono/README.md +21 -0
- package/src/pitono/__init__.py +6 -0
- package/{pitono → src/pitono}/base_given.py +42 -20
- package/{pitono → src/pitono}/base_suite.py +55 -2
- package/{pitono → src/pitono}/base_then.py +15 -1
- package/{pitono → src/pitono}/base_when.py +15 -1
- package/{pitono → src/pitono}/pitono.egg-info/PKG-INFO +25 -0
- package/{pitono → src/pitono}/pitono.egg-info/SOURCES.txt +1 -0
- package/src/pitono/types.py +87 -0
- package/src/services/FileService.ts +146 -11
- package/src/testeranto.ts +115 -149
- package/src/utils/golingvuMetafile.ts +822 -118
- package/src/utils/golingvuWatcher.ts +285 -0
- package/src/utils/logFiles.ts +10 -2
- package/src/utils/makePrompt.ts +12 -1
- package/src/utils/pitonoMetafile.ts +326 -54
- package/src/utils/pitonoWatcher.ts +157 -0
- package/testeranto/App.css +78 -0
- package/testeranto/App.js +4828 -2814
- package/testeranto/bundles/node/core/{chunk-RIM6RECA.mjs → chunk-MJTSYIAQ.mjs} +179 -250
- package/testeranto/bundles/node/core/src/lib/BaseSuite.test/node.test.mjs +110 -62
- package/testeranto/bundles/node/core/src/lib/TipoSkripto.test/TipoSkripto.mjs +135 -137
- package/testeranto/bundles/node/core/src/lib/pmProxy.test/index.mjs +4317 -4
- package/testeranto/bundles/pure/core/{chunk-XYOCRDEQ.mjs → chunk-6HR24P27.mjs} +96 -173
- package/testeranto/bundles/pure/core/src/Pure.test.mjs +1 -1
- package/testeranto/bundles/pure/core/src/lib/BaseSuite.test/pure.test.mjs +110 -62
- package/testeranto/bundles/web/core/{chunk-JMDLMADH.mjs → chunk-AZZHJNSU.mjs} +2473 -191
- package/testeranto/bundles/web/core/{chunk-LQMU5NCG.mjs → chunk-ME6I6FJZ.mjs} +96 -173
- package/testeranto/bundles/web/core/src/components/pure/FeaturesReporterView.test/index.html +15 -0
- package/testeranto/bundles/web/core/src/components/pure/FeaturesReporterView.test/index.mjs +3 -5
- package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.css +0 -78
- package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.html +15 -0
- package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.mjs +6476 -69
- package/testeranto/bundles/web/core/src/lib/BaseSuite.test/web.test.html +15 -0
- package/testeranto/bundles/web/core/src/lib/BaseSuite.test/web.test.mjs +110 -62
- package/testeranto/helpo_chat_history.json +1 -0
- package/testeranto/metafiles/golang/core.json +42 -47
- package/testeranto/metafiles/node/core.json +263 -247
- package/testeranto/metafiles/pure/core.json +23 -38
- package/testeranto/metafiles/python/core.json +85 -9
- package/testeranto/metafiles/web/core.json +966 -460
- package/testeranto/reports/core/config.json +30 -6
- package/testeranto/reports/core/example/Calculator.golingvu/golang/exit.log +1 -0
- package/testeranto/reports/core/example/Calculator.golingvu/golang/stderr.log +2 -0
- package/testeranto/reports/core/example/Calculator.golingvu/golang/stdout.log +1 -0
- package/testeranto/reports/core/example/Calculator.pitono.test/python/exit.log +1 -0
- package/testeranto/reports/core/example/Calculator.pitono.test/python/stderr.log +11 -0
- package/testeranto/reports/core/example/Calculator.pitono.test/python/stdout.log +1 -0
- package/testeranto/reports/core/example/Calculator.test/node/exit.log +1 -0
- package/testeranto/reports/core/example/Calculator.test/node/lint_errors.txt +2 -0
- package/testeranto/reports/core/example/Calculator.test/node/message.txt +16 -0
- package/testeranto/reports/core/example/Calculator.test/node/prompt.txt +13 -0
- package/testeranto/reports/core/example/Calculator.test/node/stderr.log +33 -0
- package/testeranto/reports/core/example/Calculator.test/node/stdout.log +1076 -0
- package/testeranto/reports/core/example/Calculator.test/node/tests.json +1109 -0
- package/testeranto/reports/core/example/Calculator.test/node/type_errors.txt +34 -0
- package/testeranto/reports/core/example/test_example/python/exit.log +1 -0
- package/testeranto/reports/core/example/test_example/python/stderr.log +24 -0
- package/testeranto/reports/core/src/Pure.test/pure/message.txt +1 -2
- package/testeranto/reports/core/src/Pure.test/pure/prompt.txt +4 -5
- package/testeranto/reports/core/src/Pure.test/pure/type_errors.txt +16 -3
- package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/error.log +0 -91
- package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/exit.log +0 -1
- package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/info.log +0 -2
- package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/message.txt +17 -0
- package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/prompt.txt +26 -0
- package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/type_errors.txt +69 -0
- package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/lint_errors.txt +16 -0
- package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/message.txt +17 -0
- package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/prompt.txt +27 -0
- package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/type_errors.txt +42 -0
- package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/error.log +0 -30
- package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/exit.log +0 -1
- package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/info.log +0 -2
- package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/lint_errors.txt +30 -0
- package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/message.txt +17 -0
- package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/prompt.txt +30 -0
- package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/type_errors.txt +58 -0
- package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/exit.log +1 -1
- package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/prompt.txt +9 -1
- package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/stderr.log +1 -0
- package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/stdout.log +4 -1
- package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/tests.json +98 -7
- package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/type_errors.txt +44 -28
- package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/message.txt +1 -2
- package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/prompt.txt +4 -6
- package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/type_errors.txt +44 -28
- package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/error.log +0 -1
- package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/exit.log +0 -1
- package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/message.txt +17 -0
- package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/prompt.txt +25 -0
- package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/type_errors.txt +69 -0
- package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/exit.log +1 -1
- package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/message.txt +1 -2
- package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/prompt.txt +4 -8
- package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/stderr.log +68 -35
- package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/stdout.log +336 -6
- package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/tests.json +166 -0
- package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/type_errors.txt +20 -13
- package/testeranto/reports/core/src/lib/pmProxy.test/index/node/exit.log +1 -1
- package/testeranto/reports/core/src/lib/pmProxy.test/index/node/prompt.txt +9 -1
- package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stderr.log +0 -20
- package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stdout.log +1 -3
- package/testeranto/reports/core/src/lib/pmProxy.test/index/node/tests.json +31 -0
- package/testeranto/reports/core/src/lib/pmProxy.test/index/node/type_errors.txt +16 -3
- package/testeranto/reports/core/summary.json +46 -19
- package/testeranto.config.ts +18 -30
- package/dist/cjs-shim.js +0 -12
- package/dist/common/design-editor/DesignEditor.js +0 -77
- package/dist/common/design-editor/index.js +0 -18
- package/dist/common/design-editor/server.js +0 -98
- package/dist/common/design-editor/types.js +0 -2
- package/dist/common/package.json +0 -3
- package/dist/common/src/App.js +0 -219
- package/dist/common/src/CoreTypes.js +0 -2
- package/dist/common/src/Init.js +0 -48
- package/dist/common/src/Node.js +0 -40
- package/dist/common/src/NodeSidecar.js +0 -15
- package/dist/common/src/PM/PM_WithBuild.js +0 -135
- package/dist/common/src/PM/PM_WithEslintAndTsc.js +0 -204
- package/dist/common/src/PM/PM_WithGit.js +0 -517
- package/dist/common/src/PM/PM_WithProcesses.js +0 -519
- package/dist/common/src/PM/PM_WithWebSocket.js +0 -535
- package/dist/common/src/PM/__tests__/nodeSidecar.testeranto.js +0 -108
- package/dist/common/src/PM/__tests__/pureSidecar.testeranto.js +0 -93
- package/dist/common/src/PM/__tests__/webSidecar.testeranto.js +0 -93
- package/dist/common/src/PM/base.js +0 -319
- package/dist/common/src/PM/index.js +0 -6
- package/dist/common/src/PM/main.js +0 -672
- package/dist/common/src/PM/metafileOutputs.js +0 -78
- package/dist/common/src/PM/node.js +0 -179
- package/dist/common/src/PM/nodeSidecar.js +0 -65
- package/dist/common/src/PM/pitonoRunner.js +0 -54
- package/dist/common/src/PM/pure.js +0 -103
- package/dist/common/src/PM/pureSidecar.js +0 -48
- package/dist/common/src/PM/sidecar.js +0 -11
- package/dist/common/src/PM/types.js +0 -2
- package/dist/common/src/PM/utils.js +0 -210
- package/dist/common/src/PM/web.js +0 -106
- package/dist/common/src/PM/webSidecar.js +0 -47
- package/dist/common/src/Pure.js +0 -52
- package/dist/common/src/Pure.test.js +0 -180
- package/dist/common/src/PureSidecar.js +0 -13
- package/dist/common/src/ReportServer.js +0 -1
- package/dist/common/src/ReportServer.test.ts/index.js +0 -78
- package/dist/common/src/ReportServerLib.js +0 -1
- package/dist/common/src/Types.js +0 -2
- package/dist/common/src/Web.js +0 -61
- package/dist/common/src/WebSidecar.js +0 -14
- package/dist/common/src/components/DesignEditorPage.js +0 -205
- package/dist/common/src/components/SunriseAnimation.js +0 -291
- package/dist/common/src/components/SunriseAnimation.test/implementation.js +0 -1
- package/dist/common/src/components/SunriseAnimation.test/index.js +0 -1
- package/dist/common/src/components/SunriseAnimation.test/interface.js +0 -68
- package/dist/common/src/components/SunriseAnimation.test/specification.js +0 -1
- package/dist/common/src/components/SunriseAnimation.test/types.js +0 -2
- package/dist/common/src/components/TestStatusBadge.js +0 -35
- package/dist/common/src/components/pure/AppFrame.js +0 -81
- package/dist/common/src/components/pure/AppFrame.test/implementation.js +0 -63
- package/dist/common/src/components/pure/AppFrame.test/index.js +0 -14
- package/dist/common/src/components/pure/AppFrame.test/specification.js +0 -25
- package/dist/common/src/components/pure/AppFrame.test/types.js +0 -3
- package/dist/common/src/components/pure/ArtifactTree.js +0 -80
- package/dist/common/src/components/pure/BuildLogViewer.js +0 -106
- package/dist/common/src/components/pure/DebugEnv.js +0 -30
- package/dist/common/src/components/pure/FeaturesReporterView.js +0 -23
- package/dist/common/src/components/pure/FeaturesReporterView.test/implementation.js +0 -84
- package/dist/common/src/components/pure/FeaturesReporterView.test/index.js +0 -14
- package/dist/common/src/components/pure/FeaturesReporterView.test/specification.js +0 -27
- package/dist/common/src/components/pure/FeaturesReporterView.test/types.js +0 -2
- package/dist/common/src/components/pure/FileTree.js +0 -34
- package/dist/common/src/components/pure/FileTreeItem.js +0 -29
- package/dist/common/src/components/pure/GitHubLoginButton.js +0 -18
- package/dist/common/src/components/pure/GitIntegrationView.js +0 -342
- package/dist/common/src/components/pure/ModalContent.js +0 -86
- package/dist/common/src/components/pure/ModalContent.test/implementation.js +0 -35
- package/dist/common/src/components/pure/ModalContent.test/index.js +0 -58
- package/dist/common/src/components/pure/ModalContent.test/specification.js +0 -19
- package/dist/common/src/components/pure/ModalContent.test/types.js +0 -4
- package/dist/common/src/components/pure/NavBar.js +0 -44
- package/dist/common/src/components/pure/ProcessManager.js +0 -113
- package/dist/common/src/components/pure/ProcessManagerView.js +0 -236
- package/dist/common/src/components/pure/ProjectPageView.js +0 -68
- package/dist/common/src/components/pure/ProjectPageView.test/implementation.js +0 -184
- package/dist/common/src/components/pure/ProjectPageView.test/index.js +0 -14
- package/dist/common/src/components/pure/ProjectPageView.test/specification.js +0 -32
- package/dist/common/src/components/pure/ProjectPageView.test/types.js +0 -4
- package/dist/common/src/components/pure/ProjectsPageView.js +0 -72
- package/dist/common/src/components/pure/Settings.js +0 -121
- package/dist/common/src/components/pure/Settings.test.js +0 -34
- package/dist/common/src/components/pure/SettingsButton.js +0 -13
- package/dist/common/src/components/pure/SignIn.js +0 -22
- package/dist/common/src/components/pure/SingleProcessView.js +0 -167
- package/dist/common/src/components/pure/TestPageView.js +0 -373
- package/dist/common/src/components/pure/TestPageView.test/implementation.js +0 -157
- package/dist/common/src/components/pure/TestPageView.test/index.js +0 -15
- package/dist/common/src/components/pure/TestPageView.test/specification.js +0 -26
- package/dist/common/src/components/pure/TestPageView.test/types.js +0 -4
- package/dist/common/src/components/pure/TestPageView_utils.js +0 -117
- package/dist/common/src/components/pure/TestTable.js +0 -33
- package/dist/common/src/components/pure/ThemeCard.js +0 -15
- package/dist/common/src/components/pure/ToastNotification.js +0 -14
- package/dist/common/src/components/pure/UserProfile.js +0 -27
- package/dist/common/src/components/stateful/AuthCallbackPage.js +0 -51
- package/dist/common/src/components/stateful/FeaturesReporter.js +0 -60
- package/dist/common/src/components/stateful/FileTree.js +0 -59
- package/dist/common/src/components/stateful/GitIntegrationPage.js +0 -12
- package/dist/common/src/components/stateful/ProcessManagerPage.js +0 -110
- package/dist/common/src/components/stateful/ProjectPage.js +0 -102
- package/dist/common/src/components/stateful/ProjectsPage.js +0 -116
- package/dist/common/src/components/stateful/SettingsPage.js +0 -72
- package/dist/common/src/components/stateful/SingleProcessPage.js +0 -137
- package/dist/common/src/components/stateful/TestPage.js +0 -270
- package/dist/common/src/components/stateful/TextEditorPage.js +0 -154
- package/dist/common/src/defaultConfig.js +0 -19
- package/dist/common/src/esbuildConfigs/consoleDetectorPlugin.js +0 -38
- package/dist/common/src/esbuildConfigs/eslint-formatter-testeranto.js +0 -21
- package/dist/common/src/esbuildConfigs/featuresPlugin.js +0 -39
- package/dist/common/src/esbuildConfigs/index.js +0 -21
- package/dist/common/src/esbuildConfigs/inputFilesPlugin.js +0 -30
- package/dist/common/src/esbuildConfigs/nativeImportDetectorPlugin.js +0 -24
- package/dist/common/src/esbuildConfigs/node.js +0 -24
- package/dist/common/src/esbuildConfigs/pure.js +0 -42
- package/dist/common/src/esbuildConfigs/rebuildPlugin.js +0 -19
- package/dist/common/src/esbuildConfigs/web.js +0 -48
- package/dist/common/src/hooks/useGitMode.js +0 -21
- package/dist/common/src/init-docs.js +0 -9
- package/dist/common/src/lib/BaseGiven.js +0 -99
- package/dist/common/src/lib/BaseSuite.js +0 -91
- package/dist/common/src/lib/BaseSuite.test/mock.js +0 -68
- package/dist/common/src/lib/BaseSuite.test/node.test.js +0 -10
- package/dist/common/src/lib/BaseSuite.test/pure.test.js +0 -10
- package/dist/common/src/lib/BaseSuite.test/test.js +0 -229
- package/dist/common/src/lib/BaseSuite.test/web.test.js +0 -10
- package/dist/common/src/lib/BaseThen.js +0 -64
- package/dist/common/src/lib/BaseWhen.js +0 -45
- package/dist/common/src/lib/Sidecar.js +0 -7
- package/dist/common/src/lib/Tiposkripto.js +0 -173
- package/dist/common/src/lib/Tiposkripto.test/MockTiposkripto.js +0 -180
- package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.adapter.js +0 -29
- package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.implementation.js +0 -213
- package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.js +0 -11
- package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.specification.js +0 -50
- package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.types.js +0 -2
- package/dist/common/src/lib/abstractBase.test/MockGiven.js +0 -24
- package/dist/common/src/lib/abstractBase.test/MockThen.js +0 -16
- package/dist/common/src/lib/abstractBase.test/MockWhen.js +0 -20
- package/dist/common/src/lib/abstractBase.test/adapter.js +0 -24
- package/dist/common/src/lib/abstractBase.test/implementation.js +0 -38
- package/dist/common/src/lib/abstractBase.test/index.js +0 -18
- package/dist/common/src/lib/abstractBase.test/specification.js +0 -19
- package/dist/common/src/lib/abstractBase.test/types.js +0 -2
- package/dist/common/src/lib/index.js +0 -31
- package/dist/common/src/lib/pmProxy.js +0 -293
- package/dist/common/src/lib/pmProxy.test/adapter.js +0 -54
- package/dist/common/src/lib/pmProxy.test/implementation.js +0 -137
- package/dist/common/src/lib/pmProxy.test/index.js +0 -15
- package/dist/common/src/lib/pmProxy.test/mockPM.js +0 -34
- package/dist/common/src/lib/pmProxy.test/mockPMBase.js +0 -131
- package/dist/common/src/lib/pmProxy.test/specification.js +0 -179
- package/dist/common/src/lib/pmProxy.test/types.js +0 -2
- package/dist/common/src/lib/types.js +0 -3
- package/dist/common/src/mothership/index.js +0 -21
- package/dist/common/src/mothership/test.js +0 -83
- package/dist/common/src/run.js +0 -49
- package/dist/common/src/services/FileService.js +0 -505
- package/dist/common/src/services/GitHubAuthService.js +0 -184
- package/dist/common/src/testeranto.js +0 -224
- package/dist/common/src/types/features.js +0 -34
- package/dist/common/src/utils/api.js +0 -93
- package/dist/common/src/utils/buildTemplates.js +0 -37
- package/dist/common/src/utils/featureUtils.js +0 -29
- package/dist/common/src/utils/gitTest.js +0 -27
- package/dist/common/src/utils/golingvuMetafile.js +0 -116
- package/dist/common/src/utils/logFiles.js +0 -52
- package/dist/common/src/utils/makePrompt.js +0 -116
- package/dist/common/src/utils/pitonoMetafile.js +0 -67
- package/dist/common/src/utils/queue.js +0 -36
- package/dist/common/src/utils.js +0 -143
- package/dist/common/src/web.html.js +0 -18
- package/dist/common/testeranto.config.js +0 -102
- package/dist/common/tsconfig.common.tsbuildinfo +0 -1
- package/dist/module/design-editor/DesignEditor.js +0 -40
- package/dist/module/design-editor/index.js +0 -2
- package/dist/module/design-editor/server.js +0 -92
- package/dist/module/design-editor/types.js +0 -1
- package/dist/module/package.json +0 -3
- package/dist/module/src/App.js +0 -176
- package/dist/module/src/CoreTypes.js +0 -1
- package/dist/module/src/Init.js +0 -43
- package/dist/module/src/Node.js +0 -33
- package/dist/module/src/NodeSidecar.js +0 -11
- package/dist/module/src/PM/PM_WithBuild.js +0 -128
- package/dist/module/src/PM/PM_WithEslintAndTsc.js +0 -197
- package/dist/module/src/PM/PM_WithGit.js +0 -477
- package/dist/module/src/PM/PM_WithProcesses.js +0 -479
- package/dist/module/src/PM/PM_WithWebSocket.js +0 -528
- package/dist/module/src/PM/__tests__/nodeSidecar.testeranto.js +0 -103
- package/dist/module/src/PM/__tests__/pureSidecar.testeranto.js +0 -88
- package/dist/module/src/PM/__tests__/webSidecar.testeranto.js +0 -88
- package/dist/module/src/PM/base.js +0 -312
- package/dist/module/src/PM/index.js +0 -2
- package/dist/module/src/PM/main.js +0 -632
- package/dist/module/src/PM/metafileOutputs.js +0 -78
- package/dist/module/src/PM/node.js +0 -172
- package/dist/module/src/PM/nodeSidecar.js +0 -58
- package/dist/module/src/PM/pitonoRunner.js +0 -47
- package/dist/module/src/PM/pure.js +0 -99
- package/dist/module/src/PM/pureSidecar.js +0 -41
- package/dist/module/src/PM/sidecar.js +0 -7
- package/dist/module/src/PM/types.js +0 -1
- package/dist/module/src/PM/utils.js +0 -196
- package/dist/module/src/PM/web.js +0 -102
- package/dist/module/src/PM/webSidecar.js +0 -40
- package/dist/module/src/Pure.js +0 -45
- package/dist/module/src/Pure.test.js +0 -175
- package/dist/module/src/PureSidecar.js +0 -9
- package/dist/module/src/ReportServer.js +0 -1
- package/dist/module/src/ReportServer.test.ts/index.js +0 -73
- package/dist/module/src/ReportServerLib.js +0 -1
- package/dist/module/src/Types.js +0 -1
- package/dist/module/src/Web.js +0 -54
- package/dist/module/src/WebSidecar.js +0 -10
- package/dist/module/src/components/DesignEditorPage.js +0 -168
- package/dist/module/src/components/SunriseAnimation.js +0 -256
- package/dist/module/src/components/SunriseAnimation.test/implementation.js +0 -1
- package/dist/module/src/components/SunriseAnimation.test/index.js +0 -1
- package/dist/module/src/components/SunriseAnimation.test/interface.js +0 -32
- package/dist/module/src/components/SunriseAnimation.test/specification.js +0 -1
- package/dist/module/src/components/SunriseAnimation.test/types.js +0 -1
- package/dist/module/src/components/TestStatusBadge.js +0 -28
- package/dist/module/src/components/pure/AppFrame.js +0 -74
- package/dist/module/src/components/pure/AppFrame.test/implementation.js +0 -57
- package/dist/module/src/components/pure/AppFrame.test/index.js +0 -9
- package/dist/module/src/components/pure/AppFrame.test/specification.js +0 -21
- package/dist/module/src/components/pure/AppFrame.test/types.js +0 -2
- package/dist/module/src/components/pure/ArtifactTree.js +0 -80
- package/dist/module/src/components/pure/BuildLogViewer.js +0 -99
- package/dist/module/src/components/pure/DebugEnv.js +0 -23
- package/dist/module/src/components/pure/FeaturesReporterView.js +0 -16
- package/dist/module/src/components/pure/FeaturesReporterView.test/implementation.js +0 -81
- package/dist/module/src/components/pure/FeaturesReporterView.test/index.js +0 -9
- package/dist/module/src/components/pure/FeaturesReporterView.test/specification.js +0 -23
- package/dist/module/src/components/pure/FeaturesReporterView.test/types.js +0 -1
- package/dist/module/src/components/pure/FileTree.js +0 -27
- package/dist/module/src/components/pure/FileTreeItem.js +0 -22
- package/dist/module/src/components/pure/GitHubLoginButton.js +0 -11
- package/dist/module/src/components/pure/GitIntegrationView.js +0 -305
- package/dist/module/src/components/pure/ModalContent.js +0 -79
- package/dist/module/src/components/pure/ModalContent.test/implementation.js +0 -32
- package/dist/module/src/components/pure/ModalContent.test/index.js +0 -53
- package/dist/module/src/components/pure/ModalContent.test/specification.js +0 -15
- package/dist/module/src/components/pure/ModalContent.test/types.js +0 -3
- package/dist/module/src/components/pure/NavBar.js +0 -37
- package/dist/module/src/components/pure/ProcessManager.js +0 -76
- package/dist/module/src/components/pure/ProcessManagerView.js +0 -199
- package/dist/module/src/components/pure/ProjectPageView.js +0 -61
- package/dist/module/src/components/pure/ProjectPageView.test/implementation.js +0 -181
- package/dist/module/src/components/pure/ProjectPageView.test/index.js +0 -9
- package/dist/module/src/components/pure/ProjectPageView.test/specification.js +0 -28
- package/dist/module/src/components/pure/ProjectPageView.test/types.js +0 -3
- package/dist/module/src/components/pure/ProjectsPageView.js +0 -65
- package/dist/module/src/components/pure/Settings.js +0 -84
- package/dist/module/src/components/pure/Settings.test.js +0 -29
- package/dist/module/src/components/pure/SettingsButton.js +0 -6
- package/dist/module/src/components/pure/SignIn.js +0 -15
- package/dist/module/src/components/pure/SingleProcessView.js +0 -130
- package/dist/module/src/components/pure/TestPageView.js +0 -336
- package/dist/module/src/components/pure/TestPageView.test/implementation.js +0 -121
- package/dist/module/src/components/pure/TestPageView.test/index.js +0 -10
- package/dist/module/src/components/pure/TestPageView.test/specification.js +0 -22
- package/dist/module/src/components/pure/TestPageView.test/types.js +0 -3
- package/dist/module/src/components/pure/TestPageView_utils.js +0 -109
- package/dist/module/src/components/pure/TestTable.js +0 -26
- package/dist/module/src/components/pure/ThemeCard.js +0 -8
- package/dist/module/src/components/pure/ToastNotification.js +0 -7
- package/dist/module/src/components/pure/UserProfile.js +0 -20
- package/dist/module/src/components/stateful/AuthCallbackPage.js +0 -14
- package/dist/module/src/components/stateful/FeaturesReporter.js +0 -23
- package/dist/module/src/components/stateful/FileTree.js +0 -59
- package/dist/module/src/components/stateful/GitIntegrationPage.js +0 -5
- package/dist/module/src/components/stateful/ProcessManagerPage.js +0 -73
- package/dist/module/src/components/stateful/ProjectPage.js +0 -65
- package/dist/module/src/components/stateful/ProjectsPage.js +0 -79
- package/dist/module/src/components/stateful/SettingsPage.js +0 -35
- package/dist/module/src/components/stateful/SingleProcessPage.js +0 -100
- package/dist/module/src/components/stateful/TestPage.js +0 -233
- package/dist/module/src/components/stateful/TextEditorPage.js +0 -117
- package/dist/module/src/defaultConfig.js +0 -17
- package/dist/module/src/esbuildConfigs/consoleDetectorPlugin.js +0 -32
- package/dist/module/src/esbuildConfigs/eslint-formatter-testeranto.js +0 -18
- package/dist/module/src/esbuildConfigs/featuresPlugin.js +0 -34
- package/dist/module/src/esbuildConfigs/index.js +0 -19
- package/dist/module/src/esbuildConfigs/inputFilesPlugin.js +0 -25
- package/dist/module/src/esbuildConfigs/nativeImportDetectorPlugin.js +0 -21
- package/dist/module/src/esbuildConfigs/node.js +0 -19
- package/dist/module/src/esbuildConfigs/pure.js +0 -37
- package/dist/module/src/esbuildConfigs/rebuildPlugin.js +0 -14
- package/dist/module/src/esbuildConfigs/web.js +0 -43
- package/dist/module/src/hooks/useGitMode.js +0 -17
- package/dist/module/src/init-docs.js +0 -4
- package/dist/module/src/lib/BaseGiven.js +0 -95
- package/dist/module/src/lib/BaseSuite.js +0 -87
- package/dist/module/src/lib/BaseSuite.test/mock.js +0 -61
- package/dist/module/src/lib/BaseSuite.test/node.test.js +0 -5
- package/dist/module/src/lib/BaseSuite.test/pure.test.js +0 -5
- package/dist/module/src/lib/BaseSuite.test/test.js +0 -225
- package/dist/module/src/lib/BaseSuite.test/web.test.js +0 -5
- package/dist/module/src/lib/BaseThen.js +0 -60
- package/dist/module/src/lib/BaseWhen.js +0 -41
- package/dist/module/src/lib/Sidecar.js +0 -3
- package/dist/module/src/lib/Tiposkripto.js +0 -170
- package/dist/module/src/lib/Tiposkripto.test/MockTiposkripto.js +0 -173
- package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.adapter.js +0 -26
- package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.implementation.js +0 -210
- package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.js +0 -6
- package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.specification.js +0 -46
- package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.types.js +0 -1
- package/dist/module/src/lib/abstractBase.test/MockGiven.js +0 -20
- package/dist/module/src/lib/abstractBase.test/MockThen.js +0 -12
- package/dist/module/src/lib/abstractBase.test/MockWhen.js +0 -16
- package/dist/module/src/lib/abstractBase.test/adapter.js +0 -21
- package/dist/module/src/lib/abstractBase.test/implementation.js +0 -35
- package/dist/module/src/lib/abstractBase.test/index.js +0 -13
- package/dist/module/src/lib/abstractBase.test/specification.js +0 -15
- package/dist/module/src/lib/abstractBase.test/types.js +0 -1
- package/dist/module/src/lib/index.js +0 -26
- package/dist/module/src/lib/pmProxy.js +0 -284
- package/dist/module/src/lib/pmProxy.test/adapter.js +0 -51
- package/dist/module/src/lib/pmProxy.test/implementation.js +0 -134
- package/dist/module/src/lib/pmProxy.test/index.js +0 -10
- package/dist/module/src/lib/pmProxy.test/mockPM.js +0 -30
- package/dist/module/src/lib/pmProxy.test/mockPMBase.js +0 -127
- package/dist/module/src/lib/pmProxy.test/specification.js +0 -175
- package/dist/module/src/lib/pmProxy.test/types.js +0 -1
- package/dist/module/src/lib/types.js +0 -2
- package/dist/module/src/mothership/index.js +0 -16
- package/dist/module/src/mothership/test.js +0 -78
- package/dist/module/src/run.js +0 -49
- package/dist/module/src/services/FileService.js +0 -468
- package/dist/module/src/services/GitHubAuthService.js +0 -180
- package/dist/module/src/testeranto.js +0 -186
- package/dist/module/src/types/features.js +0 -31
- package/dist/module/src/utils/api.js +0 -87
- package/dist/module/src/utils/buildTemplates.js +0 -33
- package/dist/module/src/utils/featureUtils.js +0 -24
- package/dist/module/src/utils/gitTest.js +0 -23
- package/dist/module/src/utils/golingvuMetafile.js +0 -109
- package/dist/module/src/utils/logFiles.js +0 -47
- package/dist/module/src/utils/makePrompt.js +0 -109
- package/dist/module/src/utils/pitonoMetafile.js +0 -60
- package/dist/module/src/utils/queue.js +0 -32
- package/dist/module/src/utils.js +0 -130
- package/dist/module/src/web.html.js +0 -16
- package/dist/module/testeranto.config.js +0 -100
- package/dist/module/tsconfig.module.tsbuildinfo +0 -1
- package/dist/types/design-editor/DesignEditor.d.ts +0 -1
- package/dist/types/src/App.d.ts +0 -19
- package/dist/types/src/CoreTypes.d.ts +0 -52
- package/dist/types/src/Init.d.ts +0 -2
- package/dist/types/src/Node.d.ts +0 -9
- package/dist/types/src/NodeSidecar.d.ts +0 -6
- package/dist/types/src/PM/PM_WithBuild.d.ts +0 -13
- package/dist/types/src/PM/PM_WithEslintAndTsc.d.ts +0 -22
- package/dist/types/src/PM/PM_WithGit.d.ts +0 -27
- package/dist/types/src/PM/PM_WithProcesses.d.ts +0 -29
- package/dist/types/src/PM/PM_WithWebSocket.d.ts +0 -108
- package/dist/types/src/PM/__tests__/nodeSidecar.testeranto.d.ts +0 -2
- package/dist/types/src/PM/__tests__/pureSidecar.testeranto.d.ts +0 -2
- package/dist/types/src/PM/__tests__/webSidecar.testeranto.d.ts +0 -2
- package/dist/types/src/PM/base.d.ts +0 -35
- package/dist/types/src/PM/index.d.ts +0 -35
- package/dist/types/src/PM/main.d.ts +0 -8
- package/dist/types/src/PM/node.d.ts +0 -38
- package/dist/types/src/PM/nodeSidecar.d.ts +0 -13
- package/dist/types/src/PM/pitonoRunner.d.ts +0 -7
- package/dist/types/src/PM/pure.d.ts +0 -41
- package/dist/types/src/PM/pureSidecar.d.ts +0 -11
- package/dist/types/src/PM/sidecar.d.ts +0 -8
- package/dist/types/src/PM/types.d.ts +0 -118
- package/dist/types/src/PM/utils.d.ts +0 -35
- package/dist/types/src/PM/web.d.ts +0 -41
- package/dist/types/src/PM/webSidecar.d.ts +0 -11
- package/dist/types/src/Pure.d.ts +0 -14
- package/dist/types/src/Pure.test.d.ts +0 -2
- package/dist/types/src/PureSidecar.d.ts +0 -8
- package/dist/types/src/ReportServer.test.ts/index.d.ts +0 -2
- package/dist/types/src/Types.d.ts +0 -119
- package/dist/types/src/Web.d.ts +0 -9
- package/dist/types/src/WebSidecar.d.ts +0 -8
- package/dist/types/src/components/DesignEditorPage.d.ts +0 -1
- package/dist/types/src/components/SunriseAnimation.d.ts +0 -5
- package/dist/types/src/components/SunriseAnimation.test/interface.d.ts +0 -11
- package/dist/types/src/components/SunriseAnimation.test/types.d.ts +0 -39
- package/dist/types/src/components/TestStatusBadge.d.ts +0 -15
- package/dist/types/src/components/pure/AppFrame.d.ts +0 -11
- package/dist/types/src/components/pure/AppFrame.test/implementation.d.ts +0 -3
- package/dist/types/src/components/pure/AppFrame.test/index.d.ts +0 -3
- package/dist/types/src/components/pure/AppFrame.test/specification.d.ts +0 -3
- package/dist/types/src/components/pure/AppFrame.test/types.d.ts +0 -33
- package/dist/types/src/components/pure/BuildLogViewer.d.ts +0 -7
- package/dist/types/src/components/pure/DebugEnv.d.ts +0 -2
- package/dist/types/src/components/pure/FeaturesReporterView.d.ts +0 -7
- package/dist/types/src/components/pure/FeaturesReporterView.test/implementation.d.ts +0 -3
- package/dist/types/src/components/pure/FeaturesReporterView.test/index.d.ts +0 -2
- package/dist/types/src/components/pure/FeaturesReporterView.test/specification.d.ts +0 -3
- package/dist/types/src/components/pure/FeaturesReporterView.test/types.d.ts +0 -54
- package/dist/types/src/components/pure/FileTree.d.ts +0 -6
- package/dist/types/src/components/pure/FileTreeItem.d.ts +0 -8
- package/dist/types/src/components/pure/GitHubLoginButton.d.ts +0 -8
- package/dist/types/src/components/pure/GitIntegrationView.d.ts +0 -1
- package/dist/types/src/components/pure/ModalContent.d.ts +0 -7
- package/dist/types/src/components/pure/ModalContent.test/implementation.d.ts +0 -3
- package/dist/types/src/components/pure/ModalContent.test/index.d.ts +0 -2
- package/dist/types/src/components/pure/ModalContent.test/specification.d.ts +0 -3
- package/dist/types/src/components/pure/ModalContent.test/types.d.ts +0 -45
- package/dist/types/src/components/pure/NavBar.d.ts +0 -23
- package/dist/types/src/components/pure/ProcessManager.d.ts +0 -8
- package/dist/types/src/components/pure/ProcessManagerView.d.ts +0 -20
- package/dist/types/src/components/pure/ProjectPageView.d.ts +0 -14
- package/dist/types/src/components/pure/ProjectPageView.test/implementation.d.ts +0 -3
- package/dist/types/src/components/pure/ProjectPageView.test/index.d.ts +0 -2
- package/dist/types/src/components/pure/ProjectPageView.test/specification.d.ts +0 -3
- package/dist/types/src/components/pure/ProjectPageView.test/types.d.ts +0 -57
- package/dist/types/src/components/pure/ProjectsPageView.d.ts +0 -29
- package/dist/types/src/components/pure/Settings.d.ts +0 -1
- package/dist/types/src/components/pure/Settings.test.d.ts +0 -1
- package/dist/types/src/components/pure/SettingsButton.d.ts +0 -2
- package/dist/types/src/components/pure/SignIn.d.ts +0 -1
- package/dist/types/src/components/pure/SingleProcessView.d.ts +0 -10
- package/dist/types/src/components/pure/TestPageView.d.ts +0 -16
- package/dist/types/src/components/pure/TestPageView.test/implementation.d.ts +0 -12
- package/dist/types/src/components/pure/TestPageView.test/index.d.ts +0 -3
- package/dist/types/src/components/pure/TestPageView.test/specification.d.ts +0 -11
- package/dist/types/src/components/pure/TestPageView.test/types.d.ts +0 -65
- package/dist/types/src/components/pure/TestPageView_utils.d.ts +0 -23
- package/dist/types/src/components/pure/TestTable.d.ts +0 -16
- package/dist/types/src/components/pure/ThemeCard.d.ts +0 -9
- package/dist/types/src/components/pure/ToastNotification.d.ts +0 -6
- package/dist/types/src/components/pure/UserProfile.d.ts +0 -2
- package/dist/types/src/components/stateful/AuthCallbackPage.d.ts +0 -2
- package/dist/types/src/components/stateful/FeaturesReporter.d.ts +0 -2
- package/dist/types/src/components/stateful/GitIntegrationPage.d.ts +0 -1
- package/dist/types/src/components/stateful/ProcessManagerPage.d.ts +0 -2
- package/dist/types/src/components/stateful/ProjectPage.d.ts +0 -1
- package/dist/types/src/components/stateful/ProjectsPage.d.ts +0 -1
- package/dist/types/src/components/stateful/SettingsPage.d.ts +0 -2
- package/dist/types/src/components/stateful/SingleProcessPage.d.ts +0 -2
- package/dist/types/src/components/stateful/TestPage.d.ts +0 -1
- package/dist/types/src/components/stateful/TextEditorPage.d.ts +0 -1
- package/dist/types/src/defaultConfig.d.ts +0 -3
- package/dist/types/src/esbuildConfigs/consoleDetectorPlugin.d.ts +0 -2
- package/dist/types/src/esbuildConfigs/eslint-formatter-testeranto.d.ts +0 -2
- package/dist/types/src/esbuildConfigs/featuresPlugin.d.ts +0 -5
- package/dist/types/src/esbuildConfigs/index.d.ts +0 -4
- package/dist/types/src/esbuildConfigs/inputFilesPlugin.d.ts +0 -7
- package/dist/types/src/esbuildConfigs/nativeImportDetectorPlugin.d.ts +0 -2
- package/dist/types/src/esbuildConfigs/node.d.ts +0 -4
- package/dist/types/src/esbuildConfigs/pure.d.ts +0 -4
- package/dist/types/src/esbuildConfigs/rebuildPlugin.d.ts +0 -6
- package/dist/types/src/esbuildConfigs/web.d.ts +0 -4
- package/dist/types/src/hooks/useGitMode.d.ts +0 -7
- package/dist/types/src/init-docs.d.ts +0 -1
- package/dist/types/src/lib/BaseGiven.d.ts +0 -44
- package/dist/types/src/lib/BaseSuite.d.ts +0 -46
- package/dist/types/src/lib/BaseSuite.test/mock.d.ts +0 -21
- package/dist/types/src/lib/BaseSuite.test/node.test.d.ts +0 -2
- package/dist/types/src/lib/BaseSuite.test/pure.test.d.ts +0 -2
- package/dist/types/src/lib/BaseSuite.test/test.d.ts +0 -37
- package/dist/types/src/lib/BaseSuite.test/web.test.d.ts +0 -2
- package/dist/types/src/lib/BaseThen.d.ts +0 -27
- package/dist/types/src/lib/BaseWhen.d.ts +0 -27
- package/dist/types/src/lib/Sidecar.d.ts +0 -5
- package/dist/types/src/lib/Tiposkripto.d.ts +0 -37
- package/dist/types/src/lib/Tiposkripto.test/MockTiposkripto.d.ts +0 -18
- package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.adapter.d.ts +0 -3
- package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.d.ts +0 -2
- package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.implementation.d.ts +0 -3
- package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.specification.d.ts +0 -3
- package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.types.d.ts +0 -58
- package/dist/types/src/lib/abstractBase.test/MockGiven.d.ts +0 -9
- package/dist/types/src/lib/abstractBase.test/MockThen.d.ts +0 -6
- package/dist/types/src/lib/abstractBase.test/MockWhen.d.ts +0 -6
- package/dist/types/src/lib/abstractBase.test/adapter.d.ts +0 -3
- package/dist/types/src/lib/abstractBase.test/implementation.d.ts +0 -3
- package/dist/types/src/lib/abstractBase.test/index.d.ts +0 -2
- package/dist/types/src/lib/abstractBase.test/specification.d.ts +0 -3
- package/dist/types/src/lib/abstractBase.test/types.d.ts +0 -39
- package/dist/types/src/lib/index.d.ts +0 -73
- package/dist/types/src/lib/pmProxy.d.ts +0 -12
- package/dist/types/src/lib/pmProxy.test/adapter.d.ts +0 -3
- package/dist/types/src/lib/pmProxy.test/implementation.d.ts +0 -3
- package/dist/types/src/lib/pmProxy.test/index.d.ts +0 -6
- package/dist/types/src/lib/pmProxy.test/mockPM.d.ts +0 -10
- package/dist/types/src/lib/pmProxy.test/mockPMBase.d.ts +0 -40
- package/dist/types/src/lib/pmProxy.test/specification.d.ts +0 -3
- package/dist/types/src/lib/pmProxy.test/types.d.ts +0 -42
- package/dist/types/src/lib/types.d.ts +0 -24
- package/dist/types/src/mothership/index.d.ts +0 -2
- package/dist/types/src/mothership/test.d.ts +0 -2
- package/dist/types/src/services/FileService.d.ts +0 -34
- package/dist/types/src/services/GitHubAuthService.d.ts +0 -32
- package/dist/types/src/testeranto.d.ts +0 -1
- package/dist/types/src/types/features.d.ts +0 -7
- package/dist/types/src/utils/api.d.ts +0 -10
- package/dist/types/src/utils/buildTemplates.d.ts +0 -1
- package/dist/types/src/utils/featureUtils.d.ts +0 -6
- package/dist/types/src/utils/gitTest.d.ts +0 -11
- package/dist/types/src/utils/golingvuMetafile.d.ts +0 -19
- package/dist/types/src/utils/logFiles.d.ts +0 -75
- package/dist/types/src/utils/makePrompt.d.ts +0 -2
- package/dist/types/src/utils/pitonoMetafile.d.ts +0 -7
- package/dist/types/src/utils/queue.d.ts +0 -11
- package/dist/types/src/utils.d.ts +0 -20
- package/dist/types/src/web.html.d.ts +0 -2
- package/dist/types/tsconfig.types.tsbuildinfo +0 -1
- package/example/__pycache__/Calculator.cpython-313.pyc +0 -0
- package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/README.md +0 -187
- package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_given.go +0 -163
- package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_suite.go +0 -85
- package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_then.go +0 -21
- package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_when.go +0 -21
- package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/golingvu.go +0 -554
- package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/test_adapter.go +0 -33
- package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/types.go +0 -72
- package/example/vendor/modules.txt +0 -5
- package/pitono/__init__.py +0 -54
- package/pitono/types.py +0 -78
- package/src/PM/metafileOutputs.ts +0 -90
- package/src/golingvu/base_suite_test.go +0 -197
- package/src/pitono/PM/__pycache__/python.cpython-313.pyc +0 -0
- package/src/pitono/__pycache__/Pitono.cpython-313.pyc +0 -0
- package/src/pitono/__pycache__/__init__.cpython-313.pyc +0 -0
- package/src/pitono/__pycache__/base_given.cpython-313.pyc +0 -0
- package/src/pitono/__pycache__/base_suite.cpython-313.pyc +0 -0
- package/src/pitono/__pycache__/base_then.cpython-313.pyc +0 -0
- package/src/pitono/__pycache__/base_when.cpython-313.pyc +0 -0
- package/src/pitono/__pycache__/core_generator.cpython-313.pyc +0 -0
- package/src/pitono/__pycache__/simple_adapter.cpython-313.pyc +0 -0
- package/src/pitono/__pycache__/types.cpython-313.pyc +0 -0
- package/src/templates/frontpage.html +0 -340
- package/src/templates/frontpage.md +0 -79
- package/testeranto/bundles/golang/core/Calculator.golingvu.golingvu.go +0 -53
- package/testeranto/bundles/node/core/chunk-VXVF7WFO.mjs +0 -4321
- package/testeranto/bundles/node/core/example/Calculator.test.mjs +0 -503
- package/testeranto/bundles/python/core/Calculator.pitono.test.py +0 -24
- package/testeranto/bundles/python/core/test_example.py +0 -24
- package/testeranto/bundles/web/core/chunk-DFRN4SYZ.mjs +0 -2297
- package/testeranto/bundles/web/core/chunk-Q5TONB2Z.mjs +0 -6874
- package/testeranto/bundles/web/core/src/components/pure/ModalContent.test/index.css +0 -11697
- package/testeranto/bundles/web/core/src/components/pure/ModalContent.test/index.mjs +0 -336
- package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/tests.json +0 -68
- package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/tests.json +0 -88
- package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/tests.json +0 -29
- /package/{pitono → src/pitono}/core_generator.py +0 -0
- /package/{pitono → src/pitono}/pitono.egg-info/dependency_links.txt +0 -0
- /package/{pitono → src/pitono}/pitono.egg-info/entry_points.txt +0 -0
- /package/{pitono → src/pitono}/pitono.egg-info/top_level.txt +0 -0
- /package/{pitono → src/pitono}/pyproject.toml +0 -0
- /package/{pitono → src/pitono}/setup.py +0 -0
- /package/{pitono → src/pitono}/simple_adapter.py +0 -0
- /package/{dist/types/src/PM/metafileOutputs.d.ts → testeranto/helpo_chat_message.txt} +0 -0
- /package/{dist/types/src/ReportServer.d.ts → testeranto/reports/core/example/test_example/python/stdout.log} +0 -0
- /package/{dist/types/src/ReportServerLib.d.ts → testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/lint_errors.txt} +0 -0
- /package/{dist/types/src/components/SunriseAnimation.test/implementation.d.ts → testeranto/reports/core/src/components/pure/ModalContent.test/index/web/debug.log} +0 -0
- /package/{dist/types/src/components/SunriseAnimation.test/index.d.ts → testeranto/reports/core/src/components/pure/ModalContent.test/index/web/error.log} +0 -0
- /package/{dist/types/src/components/SunriseAnimation.test/specification.d.ts → testeranto/reports/core/src/components/pure/ModalContent.test/index/web/exit.log} +0 -0
- /package/{dist/types/src/components/pure/ArtifactTree.d.ts → testeranto/reports/core/src/components/pure/ModalContent.test/index/web/info.log} +0 -0
- /package/{dist/types/src/components/stateful/FileTree.d.ts → testeranto/reports/core/src/components/pure/ModalContent.test/index/web/warn.log} +0 -0
- /package/{dist/types/src/run.d.ts → testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/lint_errors.txt} +0 -0
|
@@ -12,7 +12,8 @@ export const TestPage = () => {
|
|
|
12
12
|
const navigate = useNavigate();
|
|
13
13
|
const location = useLocation();
|
|
14
14
|
const [route, setRoute] = useState('results');
|
|
15
|
-
const
|
|
15
|
+
const wsContext = useWebSocket();
|
|
16
|
+
const isConnected = wsContext?.isConnected || false;
|
|
16
17
|
|
|
17
18
|
// Sync route with hash changes
|
|
18
19
|
useEffect(() => {
|
|
@@ -89,7 +90,7 @@ export const TestPage = () => {
|
|
|
89
90
|
matchingOutputs.forEach(([_, output]) => {
|
|
90
91
|
Object.keys(output.inputs).forEach(inputPath => {
|
|
91
92
|
// Check if this input is a source file (TypeScript or Go) and not in node_modules
|
|
92
|
-
if ((inputPath.endsWith('.ts') || inputPath.endsWith('.tsx') || inputPath.endsWith('.go')) &&
|
|
93
|
+
if ((inputPath.endsWith('.ts') || inputPath.endsWith('.tsx') || inputPath.endsWith('.go') || inputPath.endsWith('.py')) &&
|
|
93
94
|
!inputPath.includes('node_modules')) {
|
|
94
95
|
// Get the full input details from metafile.inputs
|
|
95
96
|
const inputDetails = metafile.metafile.inputs[inputPath];
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
package main
|
|
2
|
+
|
|
3
|
+
import (
|
|
4
|
+
"encoding/json"
|
|
5
|
+
"fmt"
|
|
6
|
+
"os"
|
|
7
|
+
"path/filepath"
|
|
8
|
+
"testeranto/src/golingvu"
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
import (
|
|
12
|
+
"encoding/json"
|
|
13
|
+
"fmt"
|
|
14
|
+
"os"
|
|
15
|
+
"path/filepath"
|
|
16
|
+
)
|
|
17
|
+
|
|
18
|
+
func main() {
|
|
19
|
+
if len(os.Args) < 2 {
|
|
20
|
+
fmt.Println("Usage: go run main.go <test-resources-json>")
|
|
21
|
+
os.Exit(1)
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Parse test resource configuration
|
|
25
|
+
var testResourceConfig golingvu.ITTestResourceConfiguration
|
|
26
|
+
err := json.Unmarshal([]byte(os.Args[1]), &testResourceConfig)
|
|
27
|
+
if err != nil {
|
|
28
|
+
fmt.Printf("Error parsing test resources: %v\n", err)
|
|
29
|
+
os.Exit(1)
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// Here you would set up your test runner
|
|
33
|
+
// For now, this is a placeholder
|
|
34
|
+
fmt.Println("Golang test runner started")
|
|
35
|
+
fmt.Printf("Test resources: %+v\n", testResourceConfig)
|
|
36
|
+
|
|
37
|
+
// The actual test execution would go here
|
|
38
|
+
// You would need to integrate with your test framework
|
|
39
|
+
|
|
40
|
+
// Write a basic tests.json to satisfy the framework
|
|
41
|
+
testsJsonPath := filepath.Join(testResourceConfig.Fs, "tests.json")
|
|
42
|
+
basicTestResult := map[string]interface{}{
|
|
43
|
+
"tests": []interface{}{},
|
|
44
|
+
"features": []interface{}{},
|
|
45
|
+
"givens": []interface{}{},
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
data, err := json.MarshalIndent(basicTestResult, "", " ")
|
|
49
|
+
if err != nil {
|
|
50
|
+
fmt.Printf("Error marshaling tests.json: %v\n", err)
|
|
51
|
+
os.Exit(1)
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
err = os.WriteFile(testsJsonPath, data, 0644)
|
|
55
|
+
if err != nil {
|
|
56
|
+
fmt.Printf("Error writing tests.json: %v\n", err)
|
|
57
|
+
os.Exit(1)
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
fmt.Println("Test execution completed")
|
|
61
|
+
}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
package golingvu
|
|
2
|
+
|
|
3
|
+
import (
|
|
4
|
+
"fmt"
|
|
5
|
+
"net"
|
|
6
|
+
"testing"
|
|
7
|
+
"time"
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
func TestPM_Golang_Stop(t *testing.T) {
|
|
11
|
+
// Create a test configuration
|
|
12
|
+
testConfig := ITTestResourceConfiguration{
|
|
13
|
+
Name: "test",
|
|
14
|
+
Fs: "./",
|
|
15
|
+
Ports: []int{},
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
// Test that Stop method exists and can be called
|
|
19
|
+
pm := &PM_Golang{
|
|
20
|
+
testResourceConfiguration: testConfig,
|
|
21
|
+
client: nil,
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// This should not panic - test that the method exists
|
|
25
|
+
err := pm.Stop()
|
|
26
|
+
if err != nil {
|
|
27
|
+
t.Errorf("Stop() should return nil when client is nil, got: %v", err)
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// Test with a mock connection
|
|
31
|
+
// Create a temporary listener to test connection handling
|
|
32
|
+
ln, err := net.Listen("unix", "/tmp/test_socket_"+fmt.Sprintf("%d", time.Now().UnixNano()))
|
|
33
|
+
if err != nil {
|
|
34
|
+
t.Fatalf("Failed to create listener: %v", err)
|
|
35
|
+
}
|
|
36
|
+
defer ln.Close()
|
|
37
|
+
|
|
38
|
+
// Connect to the listener
|
|
39
|
+
conn, err := net.Dial("unix", ln.Addr().String())
|
|
40
|
+
if err != nil {
|
|
41
|
+
t.Fatalf("Failed to dial: %v", err)
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
pmWithConn := &PM_Golang{
|
|
45
|
+
testResourceConfiguration: testConfig,
|
|
46
|
+
client: conn,
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
// Stop should close the connection
|
|
50
|
+
err = pmWithConn.Stop()
|
|
51
|
+
if err != nil {
|
|
52
|
+
t.Errorf("Stop() should close connection successfully, got: %v", err)
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// The connection should now be closed
|
|
56
|
+
_, err = conn.Write([]byte("test"))
|
|
57
|
+
if err == nil {
|
|
58
|
+
t.Error("Connection should be closed after Stop()")
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
// TestPM_Golang_Start tests that the Start method exists
|
|
63
|
+
func TestPM_Golang_Start(t *testing.T) {
|
|
64
|
+
testConfig := ITTestResourceConfiguration{
|
|
65
|
+
Name: "test",
|
|
66
|
+
Fs: "./",
|
|
67
|
+
Ports: []int{},
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
pm := &PM_Golang{
|
|
71
|
+
testResourceConfiguration: testConfig,
|
|
72
|
+
client: nil,
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// Test that Start method exists and can be called
|
|
76
|
+
err := pm.Start()
|
|
77
|
+
if err != nil {
|
|
78
|
+
t.Errorf("Start() should return nil, got: %v", err)
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
func TestPM_Golang_WriteFileSync(t *testing.T) {
|
|
83
|
+
testConfig := ITTestResourceConfiguration{
|
|
84
|
+
Name: "test",
|
|
85
|
+
Fs: "./",
|
|
86
|
+
Ports: []int{},
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
pm := &PM_Golang{
|
|
90
|
+
testResourceConfiguration: testConfig,
|
|
91
|
+
client: nil,
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
// Test that WriteFileSync method exists and can be called
|
|
95
|
+
// Since we don't have a real connection, this will fail, but we just want to check compilation
|
|
96
|
+
_, err := pm.WriteFileSync("test.txt", "content", "testName")
|
|
97
|
+
// We expect an error due to nil client, but the method should exist
|
|
98
|
+
if err == nil {
|
|
99
|
+
t.Log("WriteFileSync method exists and was called")
|
|
100
|
+
} else {
|
|
101
|
+
t.Logf("WriteFileSync method exists but returned error (expected): %v", err)
|
|
102
|
+
}
|
|
103
|
+
}
|
package/src/golingvu/README.md
CHANGED
|
@@ -1,3 +1,187 @@
|
|
|
1
|
-
# Golingvu
|
|
1
|
+
# Golingvu - Testeranto Implementation for Go
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## Understanding the Build Process
|
|
4
|
+
|
|
5
|
+
The build process in Testeranto is inspired by esbuild's approach to bundling and metafile generation, adapted for multiple programming languages including Go, Python, and JavaScript variants.
|
|
6
|
+
|
|
7
|
+
### Core Concepts
|
|
8
|
+
|
|
9
|
+
#### 1. Metafile Generation
|
|
10
|
+
Each language implementation generates a `core.json` metafile that tracks:
|
|
11
|
+
- **Inputs**: Source files with their dependencies (imports) and metadata
|
|
12
|
+
- **Outputs**: Generated/bundled files with their relationships to inputs
|
|
13
|
+
- **Signatures**: Unique identifiers to track changes and trigger rebuilds
|
|
14
|
+
|
|
15
|
+
#### 2. File Watching
|
|
16
|
+
Two separate watchers work in tandem:
|
|
17
|
+
1. **Source Watcher**: Monitors source files for changes and triggers metafile regeneration
|
|
18
|
+
2. **Bundle Watcher**: Monitors generated files and schedules test execution when signatures change
|
|
19
|
+
|
|
20
|
+
#### 3. Signature-based Change Detection
|
|
21
|
+
- Each output file contains a unique signature in a comment
|
|
22
|
+
- When source files change, new signatures are generated
|
|
23
|
+
- Bundle watcher detects signature changes to trigger test execution
|
|
24
|
+
|
|
25
|
+
### How esbuild's Approach is Adapted
|
|
26
|
+
|
|
27
|
+
#### Original esbuild Flow:
|
|
28
|
+
1. Parse entry points and resolve imports
|
|
29
|
+
2. Bundle dependencies into output files
|
|
30
|
+
3. Generate metafile with input/output relationships
|
|
31
|
+
4. Watch for file changes and rebuild
|
|
32
|
+
|
|
33
|
+
#### Testeranto Adaptation:
|
|
34
|
+
1. **For each language**: Parse entry points and track dependencies
|
|
35
|
+
2. **Instead of bundling**: Generate wrapper files that import/run the original tests
|
|
36
|
+
3. **Generate metafile**: Track relationships between source files and generated wrappers
|
|
37
|
+
4. **Watch system**: Dual watchers for source changes and bundle updates
|
|
38
|
+
|
|
39
|
+
### Implementation Pattern for New Languages
|
|
40
|
+
|
|
41
|
+
To add support for a new language (e.g., Rust, Java, C#), follow this pattern:
|
|
42
|
+
|
|
43
|
+
#### 1. Metafile Generator (`src/utils/[language]Metafile.ts`)
|
|
44
|
+
```typescript
|
|
45
|
+
export async function generate[Language]Metafile(
|
|
46
|
+
testName: string,
|
|
47
|
+
entryPoints: string[]
|
|
48
|
+
): Promise<[Language]Metafile> {
|
|
49
|
+
// Parse entry point files to find imports/dependencies
|
|
50
|
+
// Generate unique signature
|
|
51
|
+
// Return metafile structure with inputs and outputs
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export function write[Language]Metafile(
|
|
55
|
+
testName: string,
|
|
56
|
+
metafile: [Language]Metafile
|
|
57
|
+
): void {
|
|
58
|
+
// Write metafile to disk
|
|
59
|
+
// Generate output wrapper files with signatures
|
|
60
|
+
}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
#### 2. File Watcher (`src/utils/[language]Watcher.ts`)
|
|
64
|
+
```typescript
|
|
65
|
+
export class [Language]Watcher {
|
|
66
|
+
async start() {
|
|
67
|
+
// Set up source file watcher
|
|
68
|
+
// Set up bundle file watcher
|
|
69
|
+
// Handle file change events
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
private async regenerateMetafile() {
|
|
73
|
+
// Regenerate metafile and output files
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
#### 3. Language-specific Types (`src/[language]/types.[ext]`)
|
|
79
|
+
Define interfaces for:
|
|
80
|
+
- Test adapters
|
|
81
|
+
- Resource configurations
|
|
82
|
+
- Base test components (Given, When, Then)
|
|
83
|
+
|
|
84
|
+
#### 4. Process Manager (`src/[language]/PM/[language].go`)
|
|
85
|
+
Implement process communication for:
|
|
86
|
+
- Starting/stopping tests
|
|
87
|
+
- IPC communication
|
|
88
|
+
- Resource management
|
|
89
|
+
|
|
90
|
+
### Key Implementation Details
|
|
91
|
+
|
|
92
|
+
#### Signature Handling
|
|
93
|
+
- Use timestamp-based or content-hash signatures
|
|
94
|
+
- Embed signatures in comments to avoid breaking code
|
|
95
|
+
- Ensure consistent output filenames for reliable watching
|
|
96
|
+
|
|
97
|
+
#### File Watching Strategy
|
|
98
|
+
- Use `chokidar` for Node.js-based watching
|
|
99
|
+
- Implement polling for reliability across filesystems
|
|
100
|
+
- Handle edge cases: file deletions, renames, permission changes
|
|
101
|
+
|
|
102
|
+
#### Metafile Structure
|
|
103
|
+
```json
|
|
104
|
+
{
|
|
105
|
+
"errors": [],
|
|
106
|
+
"warnings": [],
|
|
107
|
+
"metafile": {
|
|
108
|
+
"inputs": {
|
|
109
|
+
"path/to/file.ext": {
|
|
110
|
+
"bytes": 1024,
|
|
111
|
+
"imports": ["dependency1", "dependency2"]
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
"outputs": {
|
|
115
|
+
"output/path/file.ext": {
|
|
116
|
+
"imports": [],
|
|
117
|
+
"exports": [],
|
|
118
|
+
"entryPoint": "original/file.ext",
|
|
119
|
+
"inputs": {
|
|
120
|
+
"original/file.ext": {
|
|
121
|
+
"bytesInOutput": 1024
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
"bytes": 1024,
|
|
125
|
+
"signature": "unique_id"
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Current Language Implementations
|
|
133
|
+
|
|
134
|
+
#### Go (Golingvu)
|
|
135
|
+
- **Entry points**: `.go` files with test functions
|
|
136
|
+
- **Output**: Wrapper files that run `go test`
|
|
137
|
+
- **Signature**: Timestamp in comments
|
|
138
|
+
|
|
139
|
+
#### Python (Pitono)
|
|
140
|
+
- **Entry points**: `.py` files with test cases
|
|
141
|
+
- **Output**: Python modules with test runners
|
|
142
|
+
- **Signature**: Content hash or timestamp
|
|
143
|
+
|
|
144
|
+
#### JavaScript/TypeScript
|
|
145
|
+
- **Entry points**: `.js`/`.ts` files
|
|
146
|
+
- **Output**: Bundled JavaScript with esbuild
|
|
147
|
+
- **Signature**: Integrated into build process
|
|
148
|
+
|
|
149
|
+
### Common Challenges and Solutions
|
|
150
|
+
|
|
151
|
+
1. **File Change Detection**
|
|
152
|
+
- Use polling with appropriate intervals
|
|
153
|
+
- Handle filesystem event limitations
|
|
154
|
+
- Implement manual fallback checks
|
|
155
|
+
|
|
156
|
+
2. **Dependency Resolution**
|
|
157
|
+
- Parse language-specific import syntax
|
|
158
|
+
- Handle relative vs absolute imports
|
|
159
|
+
- Account for language-specific module systems
|
|
160
|
+
|
|
161
|
+
3. **Cross-platform Compatibility**
|
|
162
|
+
- Normalize file paths
|
|
163
|
+
- Handle different line endings
|
|
164
|
+
- Account for filesystem case sensitivity
|
|
165
|
+
|
|
166
|
+
4. **Performance**
|
|
167
|
+
- Debounce file change events
|
|
168
|
+
- Cache parsing results where possible
|
|
169
|
+
- Use efficient data structures for dependency tracking
|
|
170
|
+
|
|
171
|
+
### Testing the Implementation
|
|
172
|
+
|
|
173
|
+
For each new language, verify:
|
|
174
|
+
1. Source file changes trigger metafile regeneration
|
|
175
|
+
2. Bundle file changes trigger test execution
|
|
176
|
+
3. Signatures are properly updated and detected
|
|
177
|
+
4. All file paths are handled consistently
|
|
178
|
+
5. Error cases are properly handled (missing files, parse errors)
|
|
179
|
+
|
|
180
|
+
### Future Considerations
|
|
181
|
+
|
|
182
|
+
- **Incremental builds**: Only rebuild changed portions
|
|
183
|
+
- **Dependency caching**: Store parsed dependencies to avoid re-parsing
|
|
184
|
+
- **Cross-language dependencies**: Handle cases where tests in one language depend on another
|
|
185
|
+
- **Remote execution**: Support running tests in containers or remote environments
|
|
186
|
+
|
|
187
|
+
This pattern allows Testeranto to maintain a consistent architecture while supporting multiple programming languages, each with their own unique characteristics and requirements.
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
package golingvu
|
|
2
2
|
|
|
3
|
+
import "fmt"
|
|
4
|
+
|
|
3
5
|
// BaseGiven represents a base Given condition
|
|
4
6
|
type BaseGiven struct {
|
|
5
7
|
Name string
|
|
@@ -47,11 +49,21 @@ func (bg *BaseGiven) BeforeAll(store interface{}) interface{} {
|
|
|
47
49
|
|
|
48
50
|
// ToObj converts the instance to a map for serialization
|
|
49
51
|
func (bg *BaseGiven) ToObj() map[string]interface{} {
|
|
52
|
+
whenObjs := make([]map[string]interface{}, len(bg.Whens))
|
|
53
|
+
for i, w := range bg.Whens {
|
|
54
|
+
whenObjs[i] = w.ToObj()
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
thenObjs := make([]map[string]interface{}, len(bg.Thens))
|
|
58
|
+
for i, t := range bg.Thens {
|
|
59
|
+
thenObjs[i] = t.ToObj()
|
|
60
|
+
}
|
|
61
|
+
|
|
50
62
|
return map[string]interface{}{
|
|
51
63
|
"key": bg.Key,
|
|
52
64
|
"name": bg.Name,
|
|
53
|
-
"whens":
|
|
54
|
-
"thens":
|
|
65
|
+
"whens": whenObjs,
|
|
66
|
+
"thens": thenObjs,
|
|
55
67
|
"error": bg.Error,
|
|
56
68
|
"failed": bg.Failed,
|
|
57
69
|
"features": bg.Features,
|
|
@@ -74,3 +86,78 @@ func (bg *BaseGiven) AfterEach(store interface{}, key string, artifactory, pm in
|
|
|
74
86
|
func (bg *BaseGiven) UberCatcher(e error) {
|
|
75
87
|
bg.Error = e
|
|
76
88
|
}
|
|
89
|
+
|
|
90
|
+
// Give executes the given condition
|
|
91
|
+
func (bg *BaseGiven) Give(
|
|
92
|
+
subject interface{},
|
|
93
|
+
key string,
|
|
94
|
+
testResourceConfiguration ITTestResourceConfiguration,
|
|
95
|
+
tester func(interface{}) bool,
|
|
96
|
+
artifactory func(string, interface{}),
|
|
97
|
+
tLog func(...string),
|
|
98
|
+
pm interface{},
|
|
99
|
+
suiteNdx int,
|
|
100
|
+
) (interface{}, error) {
|
|
101
|
+
bg.Key = key
|
|
102
|
+
tLog("\n " + bg.Key)
|
|
103
|
+
tLog("\n Given: " + bg.Name)
|
|
104
|
+
|
|
105
|
+
// Setup
|
|
106
|
+
store, err := bg.GivenThat(
|
|
107
|
+
subject,
|
|
108
|
+
testResourceConfiguration,
|
|
109
|
+
artifactory,
|
|
110
|
+
bg.GivenCB,
|
|
111
|
+
bg.InitialValues,
|
|
112
|
+
pm,
|
|
113
|
+
)
|
|
114
|
+
if err != nil {
|
|
115
|
+
bg.Failed = true
|
|
116
|
+
bg.Error = err
|
|
117
|
+
return nil, err
|
|
118
|
+
}
|
|
119
|
+
bg.Store = store
|
|
120
|
+
|
|
121
|
+
// Process Whens
|
|
122
|
+
for whenNdx, when := range bg.Whens {
|
|
123
|
+
_, err := when.Test(
|
|
124
|
+
bg.Store,
|
|
125
|
+
testResourceConfiguration,
|
|
126
|
+
tLog,
|
|
127
|
+
pm,
|
|
128
|
+
fmt.Sprintf("suite-%d/given-%s/when/%d", suiteNdx, key, whenNdx),
|
|
129
|
+
)
|
|
130
|
+
if err != nil {
|
|
131
|
+
bg.Failed = true
|
|
132
|
+
bg.Error = err
|
|
133
|
+
return nil, err
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
// Process Thens
|
|
138
|
+
for thenNdx, then := range bg.Thens {
|
|
139
|
+
result, err := then.Test(
|
|
140
|
+
bg.Store,
|
|
141
|
+
testResourceConfiguration,
|
|
142
|
+
tLog,
|
|
143
|
+
pm,
|
|
144
|
+
fmt.Sprintf("suite-%d/given-%s/then-%d", suiteNdx, key, thenNdx),
|
|
145
|
+
)
|
|
146
|
+
if err != nil {
|
|
147
|
+
bg.Failed = true
|
|
148
|
+
bg.Error = err
|
|
149
|
+
return nil, err
|
|
150
|
+
}
|
|
151
|
+
tester(result)
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
// Cleanup
|
|
155
|
+
_, err = bg.AfterEach(bg.Store, bg.Key, artifactory, pm)
|
|
156
|
+
if err != nil {
|
|
157
|
+
bg.Failed = true
|
|
158
|
+
bg.Error = err
|
|
159
|
+
return nil, err
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
return bg.Store, nil
|
|
163
|
+
}
|
|
@@ -7,18 +7,59 @@ type BaseSuite struct {
|
|
|
7
7
|
AfterAllFunc func(store interface{}, artifactory func(string, interface{}), pm interface{}) interface{}
|
|
8
8
|
AssertThatFunc func(t interface{}) bool
|
|
9
9
|
SetupFunc func(s interface{}, artifactory func(string, interface{}), tr ITTestResourceConfiguration, pm interface{}) interface{}
|
|
10
|
+
Store interface{}
|
|
11
|
+
TestResourceConfiguration ITTestResourceConfiguration
|
|
12
|
+
Index int
|
|
13
|
+
Failed bool
|
|
14
|
+
Fails int
|
|
15
|
+
Artifacts []string
|
|
10
16
|
}
|
|
11
17
|
|
|
12
18
|
// Run executes the test suite
|
|
13
19
|
func (bs *BaseSuite) Run(input interface{}, testResourceConfiguration ITTestResourceConfiguration, artifactory func(string, interface{}), tLog func(...string), pm interface{}) (*BaseSuite, error) {
|
|
14
|
-
|
|
20
|
+
bs.TestResourceConfiguration = testResourceConfiguration
|
|
21
|
+
|
|
22
|
+
// Setup
|
|
23
|
+
subject := bs.SetupFunc(input, artifactory, testResourceConfiguration, pm)
|
|
24
|
+
|
|
25
|
+
// Run each given
|
|
26
|
+
for gKey, g := range bs.Givens {
|
|
27
|
+
_, err := g.Give(
|
|
28
|
+
subject,
|
|
29
|
+
gKey,
|
|
30
|
+
testResourceConfiguration,
|
|
31
|
+
bs.AssertThatFunc,
|
|
32
|
+
artifactory,
|
|
33
|
+
tLog,
|
|
34
|
+
pm,
|
|
35
|
+
bs.Index,
|
|
36
|
+
)
|
|
37
|
+
if err != nil {
|
|
38
|
+
bs.Failed = true
|
|
39
|
+
bs.Fails++
|
|
40
|
+
return bs, err
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
// After all
|
|
45
|
+
bs.AfterAllFunc(bs.Store, artifactory, pm)
|
|
46
|
+
|
|
15
47
|
return bs, nil
|
|
16
48
|
}
|
|
17
49
|
|
|
18
50
|
// ToObj converts the suite to a serializable object
|
|
19
51
|
func (bs *BaseSuite) ToObj() map[string]interface{} {
|
|
52
|
+
givens := make([]map[string]interface{}, 0)
|
|
53
|
+
for _, given := range bs.Givens {
|
|
54
|
+
givens = append(givens, given.ToObj())
|
|
55
|
+
}
|
|
56
|
+
|
|
20
57
|
return map[string]interface{}{
|
|
21
|
-
"name":
|
|
58
|
+
"name": bs.Name,
|
|
59
|
+
"givens": givens,
|
|
60
|
+
"fails": bs.Fails,
|
|
61
|
+
"failed": bs.Failed,
|
|
62
|
+
"features": bs.Features(),
|
|
22
63
|
}
|
|
23
64
|
}
|
|
24
65
|
|
|
@@ -37,3 +78,8 @@ func (bs *BaseSuite) Features() []string {
|
|
|
37
78
|
}
|
|
38
79
|
return features
|
|
39
80
|
}
|
|
81
|
+
|
|
82
|
+
// AddArtifact adds an artifact to the suite
|
|
83
|
+
func (bs *BaseSuite) AddArtifact(path string) {
|
|
84
|
+
bs.Artifacts = append(bs.Artifacts, path)
|
|
85
|
+
}
|