@tui-sandbox/library 11.3.3 → 11.4.1

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 (75) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/src/browser/neovim-client.js +1 -1
  3. package/dist/src/browser/neovim-client.js.map +1 -1
  4. package/dist/src/client/MyNeovimConfigModification.test.js +1 -0
  5. package/dist/src/client/MyNeovimConfigModification.test.js.map +1 -1
  6. package/dist/src/client/color-utilities.test.js +1 -0
  7. package/dist/src/client/color-utilities.test.js.map +1 -1
  8. package/dist/src/client/cypress-assertions.d.ts +14 -0
  9. package/dist/src/client/cypress-assertions.js +32 -0
  10. package/dist/src/client/cypress-assertions.js.map +1 -0
  11. package/dist/src/client/index.d.ts +1 -2
  12. package/dist/src/client/index.js +1 -2
  13. package/dist/src/client/index.js.map +1 -1
  14. package/dist/src/client/terminal-terminal-client.d.ts +0 -1
  15. package/dist/src/client/terminal-terminal-client.js +0 -1
  16. package/dist/src/client/terminal-terminal-client.js.map +1 -1
  17. package/dist/src/scripts/commands/commandTuiNeovimExec.d.ts +2 -0
  18. package/dist/src/scripts/commands/commandTuiNeovimExec.js +82 -0
  19. package/dist/src/scripts/commands/commandTuiNeovimExec.js.map +1 -0
  20. package/dist/src/scripts/commands/commandTuiNeovimPrepare.d.ts +1 -0
  21. package/dist/src/scripts/commands/commandTuiNeovimPrepare.js +12 -0
  22. package/dist/src/scripts/commands/commandTuiNeovimPrepare.js.map +1 -0
  23. package/dist/src/scripts/commands/commandTuiStart.d.ts +1 -0
  24. package/dist/src/scripts/commands/commandTuiStart.js +30 -0
  25. package/dist/src/scripts/commands/commandTuiStart.js.map +1 -0
  26. package/dist/src/scripts/parseArguments.d.ts +7 -4
  27. package/dist/src/scripts/parseArguments.js +1 -1
  28. package/dist/src/scripts/parseArguments.js.map +1 -1
  29. package/dist/src/scripts/parseArguments.test.js +1 -0
  30. package/dist/src/scripts/parseArguments.test.js.map +1 -1
  31. package/dist/src/scripts/tui.d.ts +10 -1
  32. package/dist/src/scripts/tui.js +10 -113
  33. package/dist/src/scripts/tui.js.map +1 -1
  34. package/dist/src/server/applications/neovim/NeovimJavascriptApiClient.test.js +1 -0
  35. package/dist/src/server/applications/neovim/NeovimJavascriptApiClient.test.js.map +1 -1
  36. package/dist/src/server/applications/neovim/environment/createTempDir.test.js +1 -1
  37. package/dist/src/server/applications/neovim/environment/createTempDir.test.js.map +1 -1
  38. package/dist/src/server/applications/neovim/prepareNewTestDirectory.test.js +1 -0
  39. package/dist/src/server/applications/neovim/prepareNewTestDirectory.test.js.map +1 -1
  40. package/dist/src/server/applications/terminal/runBlockingShellCommand.test.js +1 -0
  41. package/dist/src/server/applications/terminal/runBlockingShellCommand.test.js.map +1 -1
  42. package/dist/src/server/blockingCommandInputSchema.test.js +1 -0
  43. package/dist/src/server/blockingCommandInputSchema.test.js.map +1 -1
  44. package/dist/src/server/cypress-support/createCypressSupportFile.test.js +1 -0
  45. package/dist/src/server/cypress-support/createCypressSupportFile.test.js.map +1 -1
  46. package/dist/src/server/updateTestdirectorySchemaFile.test.js +1 -0
  47. package/dist/src/server/updateTestdirectorySchemaFile.test.js.map +1 -1
  48. package/dist/src/server/utilities/DisposableSingleApplication.test.js +1 -0
  49. package/dist/src/server/utilities/DisposableSingleApplication.test.js.map +1 -1
  50. package/dist/src/server/utilities/generator.test.js +1 -0
  51. package/dist/src/server/utilities/generator.test.js.map +1 -1
  52. package/dist/tsconfig.tsbuildinfo +1 -1
  53. package/package.json +2 -1
  54. package/src/browser/neovim-client.ts +1 -1
  55. package/src/client/MyNeovimConfigModification.test.ts +1 -0
  56. package/src/client/color-utilities.test.ts +1 -0
  57. package/src/client/cypress-assertions.ts +37 -0
  58. package/src/client/index.ts +1 -2
  59. package/src/client/terminal-terminal-client.ts +0 -1
  60. package/src/scripts/commands/commandTuiNeovimExec.ts +23 -0
  61. package/src/scripts/commands/commandTuiNeovimPrepare.ts +16 -0
  62. package/src/scripts/commands/commandTuiStart.ts +29 -0
  63. package/src/scripts/parseArguments.test.ts +1 -0
  64. package/src/scripts/parseArguments.ts +15 -8
  65. package/src/scripts/tui.ts +9 -56
  66. package/src/server/applications/neovim/NeovimJavascriptApiClient.test.ts +1 -0
  67. package/src/server/applications/neovim/environment/createTempDir.test.ts +1 -1
  68. package/src/server/applications/neovim/prepareNewTestDirectory.test.ts +1 -0
  69. package/src/server/applications/terminal/runBlockingShellCommand.test.ts +1 -0
  70. package/src/server/blockingCommandInputSchema.test.ts +1 -0
  71. package/src/server/cypress-support/createCypressSupportFile.test.ts +1 -0
  72. package/src/server/updateTestdirectorySchemaFile.test.ts +1 -0
  73. package/src/server/utilities/DisposableSingleApplication.test.ts +1 -0
  74. package/src/server/utilities/generator.test.ts +1 -0
  75. package/tsconfig.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## [11.4.1](https://github.com/mikavilpas/tui-sandbox/compare/library-v11.4.0...library-v11.4.1) (2025-08-03)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * not being able to import from `@tui-sandbox/library/src/client` ([#550](https://github.com/mikavilpas/tui-sandbox/issues/550)) ([cbb3648](https://github.com/mikavilpas/tui-sandbox/commit/cbb3648592c951cc85bee6d37fd22de774f4334b))
9
+
10
+ ## [11.4.0](https://github.com/mikavilpas/tui-sandbox/compare/library-v11.3.3...library-v11.4.0) (2025-08-03)
11
+
12
+
13
+ ### Features
14
+
15
+ * add cypress assertions for checking for text in a color ([#548](https://github.com/mikavilpas/tui-sandbox/issues/548)) ([1450931](https://github.com/mikavilpas/tui-sandbox/commit/1450931b4c4e0f4f53b3f8d126110df4ddc62c3f))
16
+
3
17
  ## [11.3.3](https://github.com/mikavilpas/tui-sandbox/compare/library-v11.3.2...library-v11.3.3) (2025-08-02)
4
18
 
5
19
 
@@ -1,4 +1,4 @@
1
- import { TerminalClient as NeovimTerminalClient } from "../client/index.js";
1
+ import { NeovimTerminalClient } from "../client/neovim-terminal-client.js";
2
2
  import { TerminalTerminalClient } from "../client/terminal-terminal-client.js";
3
3
  import { Lazy } from "../server/utilities/Lazy.js";
4
4
  const app = document.querySelector("#app");
@@ -1 +1 @@
1
- {"version":3,"file":"neovim-client.js","sourceRoot":"","sources":["../../../src/browser/neovim-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,IAAI,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAE3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;AAiB9E,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAA;AAElD,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAc,MAAM,CAAC,CAAA;AACvD,IAAI,CAAC,GAAG,EAAE,CAAC;IACT,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;AACzC,CAAC;AAED,qEAAqE;AACrE,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAA;AAClE,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAA;AAWtE,+CAA+C;AAC/C,MAAM,CAAC,WAAW,GAAG,KAAK,WAAW,SAAuC;IAC1E,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,CAAA;IACjC,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC;QAC7C,8BAA8B,EAAE,SAAS,EAAE,8BAA8B;QACzE,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,kBAAkB;QACnD,0BAA0B,EAAE,SAAS,EAAE,0BAA0B,IAAI,EAAE;QACvE,WAAW,EAAE,SAAS;QACtB,YAAY,EAAE,SAAS,EAAE,YAAY;KACS,CAAC,CAAA;IAEjD,MAAM,gBAAgB,GAA4B;QAChD,uBAAuB,CAAC,KAAiC;YACvD,OAAO,MAAM,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAA;QAC9C,CAAC;QACD,UAAU,CAAC,KAAK;YACd,OAAO,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QACjC,CAAC;QACD,MAAM,CAAC,KAAK;YACV,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC7B,CAAC;QACD,cAAc,CAAC,KAAK;YAClB,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;QACrC,CAAC;QACD,YAAY,CAAC,KAAK;YAChB,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC;QACD,GAAG,EAAE,aAAa;KACnB,CAAA;IAED,OAAO,gBAAgB,CAAA;AACzB,CAAC,CAAA;AA6BD,+CAA+C;AAC/C,MAAM,CAAC,wBAAwB,GAAG,KAAK,WACrC,IAAmC;IAEnC,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,EAAE,CAAA;IACrC,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAA;IAEnE,MAAM,kBAAkB,GAA8B;QACpD,GAAG,EAAE,aAAa;QAClB,uBAAuB,CAAC,KAAK;YAC3B,OAAO,QAAQ,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAA;QAChD,CAAC;KACF,CAAA;IACD,OAAO,kBAAkB,CAAA;AAC3B,CAAC,CAAA"}
1
+ {"version":3,"file":"neovim-client.js","sourceRoot":"","sources":["../../../src/browser/neovim-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAE1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;AAiB9E,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAA;AAElD,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAc,MAAM,CAAC,CAAA;AACvD,IAAI,CAAC,GAAG,EAAE,CAAC;IACT,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;AACzC,CAAC;AAED,qEAAqE;AACrE,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAA;AAClE,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAA;AAWtE,+CAA+C;AAC/C,MAAM,CAAC,WAAW,GAAG,KAAK,WAAW,SAAuC;IAC1E,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,CAAA;IACjC,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC;QAC7C,8BAA8B,EAAE,SAAS,EAAE,8BAA8B;QACzE,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,kBAAkB;QACnD,0BAA0B,EAAE,SAAS,EAAE,0BAA0B,IAAI,EAAE;QACvE,WAAW,EAAE,SAAS;QACtB,YAAY,EAAE,SAAS,EAAE,YAAY;KACS,CAAC,CAAA;IAEjD,MAAM,gBAAgB,GAA4B;QAChD,uBAAuB,CAAC,KAAiC;YACvD,OAAO,MAAM,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAA;QAC9C,CAAC;QACD,UAAU,CAAC,KAAK;YACd,OAAO,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QACjC,CAAC;QACD,MAAM,CAAC,KAAK;YACV,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC7B,CAAC;QACD,cAAc,CAAC,KAAK;YAClB,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;QACrC,CAAC;QACD,YAAY,CAAC,KAAK;YAChB,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC;QACD,GAAG,EAAE,aAAa;KACnB,CAAA;IAED,OAAO,gBAAgB,CAAA;AACzB,CAAC,CAAA;AA6BD,+CAA+C;AAC/C,MAAM,CAAC,wBAAwB,GAAG,KAAK,WACrC,IAAmC;IAEnC,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,EAAE,CAAA;IACrC,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAA;IAEnE,MAAM,kBAAkB,GAA8B;QACpD,GAAG,EAAE,aAAa;QAClB,uBAAuB,CAAC,KAAK;YAC3B,OAAO,QAAQ,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAA;QAChD,CAAC;KACF,CAAA;IACD,OAAO,kBAAkB,CAAA;AAC3B,CAAC,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { assertType, it } from "vitest";
1
2
  import * as z from "zod";
2
3
  const testDirectoryFiles = z.enum([
3
4
  "config-modifications/add_command_to_count_open_buffers.lua",
@@ -1 +1 @@
1
- {"version":3,"file":"MyNeovimConfigModification.test.js","sourceRoot":"","sources":["../../../src/client/MyNeovimConfigModification.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAGxB,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC;IAChC,4DAA4D;IAC5D,qEAAqE;IACrE,wFAAwF;IACxF,qDAAqD;IACrD,6BAA6B;IAC7B,sBAAsB;CACvB,CAAC,CAAA;AAKF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;IAClD,UAAU,CAMR,CAAsB,CAAC,CAAA;AAC3B,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"MyNeovimConfigModification.test.js","sourceRoot":"","sources":["../../../src/client/MyNeovimConfigModification.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAGxB,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC;IAChC,4DAA4D;IAC5D,qEAAqE;IACrE,wFAAwF;IACxF,qDAAqD;IACrD,6BAA6B;IAC7B,sBAAsB;CACvB,CAAC,CAAA;AAKF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;IAClD,UAAU,CAMR,CAAsB,CAAC,CAAA;AAC3B,CAAC,CAAC,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { describe, expect, it } from "vitest";
1
2
  import { rgbify } from "./color-utilities.js";
2
3
  describe("rgbify", () => {
3
4
  it("converts a catppuccin RGB color to a CSS color string", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"color-utilities.test.js","sourceRoot":"","sources":["../../../src/client/color-utilities.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAE7C,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAqB,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"color-utilities.test.js","sourceRoot":"","sources":["../../../src/client/color-utilities.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAE7C,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAqB,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,14 @@
1
+ /** Problem: cypress provides the `contains` method, but it only checks the
2
+ * first match on the page.
3
+ *
4
+ * Solution: we need to check all elements on the page and filter them
5
+ * by the text we are looking for. Then we can check if the background
6
+ * color of the element is the same as the one we are looking for.
7
+ *
8
+ * Limitation: text spanning multiple lines will not be detected.
9
+ */
10
+ export declare function textIsVisibleWithColor(text: string, color: string): Cypress.Chainable<JQuery>;
11
+ /** Like `textIsVisibleWithColor`, but checks the background color instead
12
+ * of the text color.
13
+ */
14
+ export declare function textIsVisibleWithBackgroundColor(text: string, color: string): Cypress.Chainable<JQuery>;
@@ -0,0 +1,32 @@
1
+ /// <reference types="cypress" />
2
+ /** Problem: cypress provides the `contains` method, but it only checks the
3
+ * first match on the page.
4
+ *
5
+ * Solution: we need to check all elements on the page and filter them
6
+ * by the text we are looking for. Then we can check if the background
7
+ * color of the element is the same as the one we are looking for.
8
+ *
9
+ * Limitation: text spanning multiple lines will not be detected.
10
+ */
11
+ export function textIsVisibleWithColor(text, color) {
12
+ return cy.get("div.xterm-rows span").and($spans => {
13
+ const matching = $spans.filter((_, el) => !!el.textContent.includes(text));
14
+ const colors = matching.map((_, el) => {
15
+ return window.getComputedStyle(el).color;
16
+ });
17
+ expect(JSON.stringify(colors.toArray())).to.contain(color);
18
+ });
19
+ }
20
+ /** Like `textIsVisibleWithColor`, but checks the background color instead
21
+ * of the text color.
22
+ */
23
+ export function textIsVisibleWithBackgroundColor(text, color) {
24
+ return cy.get("div.xterm-rows span").and($spans => {
25
+ const matching = $spans.filter((_, el) => !!el.textContent.includes(text));
26
+ const colors = matching.map((_, el) => {
27
+ return window.getComputedStyle(el).backgroundColor;
28
+ });
29
+ expect(JSON.stringify(colors.toArray())).to.contain(color);
30
+ });
31
+ }
32
+ //# sourceMappingURL=cypress-assertions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cypress-assertions.js","sourceRoot":"","sources":["../../../src/client/cypress-assertions.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY,EAAE,KAAa;IAChE,OAAO,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;QAE1E,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE;YACpC,OAAO,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,KAAK,CAAA;QAC1C,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gCAAgC,CAAC,IAAY,EAAE,KAAa;IAC1E,OAAO,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;QAE1E,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE;YACpC,OAAO,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,eAAe,CAAA;QACpD,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -1,3 +1,2 @@
1
1
  export { rgbify } from "./color-utilities.js";
2
- export { NeovimTerminalClient as TerminalClient } from "./neovim-terminal-client.js";
3
- export { TerminalTerminalClient } from "./terminal-terminal-client.js";
2
+ export { textIsVisibleWithBackgroundColor, textIsVisibleWithColor } from "./cypress-assertions.js";
@@ -1,5 +1,4 @@
1
1
  // This is the public client api. Semantic versioning will be applied to this.
2
2
  export { rgbify } from "./color-utilities.js";
3
- export { NeovimTerminalClient as TerminalClient } from "./neovim-terminal-client.js";
4
- export { TerminalTerminalClient } from "./terminal-terminal-client.js";
3
+ export { textIsVisibleWithBackgroundColor, textIsVisibleWithColor } from "./cypress-assertions.js";
5
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,oBAAoB,IAAI,cAAc,EAAE,MAAM,6BAA6B,CAAA;AACpF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAE9E,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,gCAAgC,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA"}
@@ -3,7 +3,6 @@ import type { StartTerminalBrowserArguments } from "../browser/neovim-client.js"
3
3
  import type { BlockingCommandClientInput } from "../server/blockingCommandInputSchema.js";
4
4
  import type { BlockingShellCommandOutput, TestDirectory } from "../server/types.js";
5
5
  import type { TuiTerminalApi } from "./startTerminal.js";
6
- import "./style.css";
7
6
  /** Manages the terminal state in the browser as well as the (browser's)
8
7
  * connection to the server side terminal application api. */
9
8
  export declare class TerminalTerminalClient {
@@ -1,7 +1,6 @@
1
1
  import { createTRPCClient, httpBatchLink, httpSubscriptionLink, splitLink } from "@trpc/client";
2
2
  import "@xterm/xterm/css/xterm.css";
3
3
  import { getTabId, startTerminal } from "./startTerminal.js";
4
- import "./style.css";
5
4
  import { supportDA1 } from "./terminal-config.js";
6
5
  /** Manages the terminal state in the browser as well as the (browser's)
7
6
  * connection to the server side terminal application api. */
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-terminal-client.js","sourceRoot":"","sources":["../../../src/client/terminal-terminal-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-terminal-client.js","sourceRoot":"","sources":["../../../src/client/terminal-terminal-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { NeovimExec } from "../parseArguments.js";
2
+ export declare function commandTuiNeovimExec(command: NeovimExec): Promise<void>;
@@ -0,0 +1,82 @@
1
+ var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
2
+ if (value !== null && value !== void 0) {
3
+ if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
4
+ var dispose, inner;
5
+ if (async) {
6
+ if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
7
+ dispose = value[Symbol.asyncDispose];
8
+ }
9
+ if (dispose === void 0) {
10
+ if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
11
+ dispose = value[Symbol.dispose];
12
+ if (async) inner = dispose;
13
+ }
14
+ if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
15
+ if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
16
+ env.stack.push({ value: value, dispose: dispose, async: async });
17
+ }
18
+ else if (async) {
19
+ env.stack.push({ async: true });
20
+ }
21
+ return value;
22
+ };
23
+ var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
24
+ return function (env) {
25
+ function fail(e) {
26
+ env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
27
+ env.hasError = true;
28
+ }
29
+ var r, s = 0;
30
+ function next() {
31
+ while (r = env.stack.pop()) {
32
+ try {
33
+ if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
34
+ if (r.dispose) {
35
+ var result = r.dispose.call(r.value);
36
+ if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
37
+ }
38
+ else s |= 1;
39
+ }
40
+ catch (e) {
41
+ fail(e);
42
+ }
43
+ }
44
+ if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
45
+ if (env.hasError) throw env.error;
46
+ }
47
+ return next();
48
+ };
49
+ })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
50
+ var e = new Error(message);
51
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
52
+ });
53
+ import { NeovimApplication } from "../../server/applications/neovim/NeovimApplication.js";
54
+ import { prepareNewTestDirectory } from "../../server/applications/neovim/prepareNewTestDirectory.js";
55
+ import { config } from "../tui.js";
56
+ export async function commandTuiNeovimExec(command) {
57
+ const env_1 = { stack: [], error: void 0, hasError: false };
58
+ try {
59
+ // automatically dispose of the neovim instance when done
60
+ const app = __addDisposableResource(env_1, new NeovimApplication(config.directories.testEnvironmentPath), true);
61
+ app.events.on("stdout", data => {
62
+ console.log(` neovim output: ${data}`);
63
+ });
64
+ const testDirectory = await prepareNewTestDirectory(config.directories);
65
+ await app.startNextAndKillCurrent(testDirectory, {
66
+ filename: "empty.txt",
67
+ headlessCmd: command.command,
68
+ NVIM_APPNAME: process.env["NVIM_APPNAME"],
69
+ }, { cols: 80, rows: 24 });
70
+ await app.application.untilExit();
71
+ }
72
+ catch (e_1) {
73
+ env_1.error = e_1;
74
+ env_1.hasError = true;
75
+ }
76
+ finally {
77
+ const result_1 = __disposeResources(env_1);
78
+ if (result_1)
79
+ await result_1;
80
+ }
81
+ }
82
+ //# sourceMappingURL=commandTuiNeovimExec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commandTuiNeovimExec.js","sourceRoot":"","sources":["../../../../src/scripts/commands/commandTuiNeovimExec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,iBAAiB,EAA8B,MAAM,uDAAuD,CAAA;AACrH,OAAO,EAAE,uBAAuB,EAAE,MAAM,6DAA6D,CAAA;AAErG,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAAmB;;;QAC5D,yDAAyD;QACzD,MAAY,GAAG,kCAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,mBAAmB,CAAC,OAAA,CAAA;QAC/E,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,QAAwC,EAAE,IAAI,CAAC,EAAE;YAC7D,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;QACF,MAAM,aAAa,GAAG,MAAM,uBAAuB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACvE,MAAM,GAAG,CAAC,uBAAuB,CAC/B,aAAa,EACb;YACE,QAAQ,EAAE,WAAW;YACrB,WAAW,EAAE,OAAO,CAAC,OAAO;YAC5B,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;SAC1C,EACD,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CACvB,CAAA;QACD,MAAM,GAAG,CAAC,WAAW,CAAC,SAAS,EAAE,CAAA;;;;;;;;;;;CAClC"}
@@ -0,0 +1 @@
1
+ export declare function commandTuiNeovimPrepare(): Promise<void>;
@@ -0,0 +1,12 @@
1
+ import { installDependencies } from "../../server/applications/neovim/api.js";
2
+ import { config } from "../tui.js";
3
+ export async function commandTuiNeovimPrepare() {
4
+ const NVIM_APPNAME = process.env["NVIM_APPNAME"];
5
+ console.log(`🚀 Installing neovim dependencies${NVIM_APPNAME ? ` for NVIM_APPNAME=${NVIM_APPNAME}` : ""}...`);
6
+ await installDependencies(config.directories.testEnvironmentPath, process.env["NVIM_APPNAME"], config.directories).catch((err) => {
7
+ console.error("Error installing neovim dependencies", err);
8
+ process.exit(1);
9
+ });
10
+ process.exit(0);
11
+ }
12
+ //# sourceMappingURL=commandTuiNeovimPrepare.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commandTuiNeovimPrepare.js","sourceRoot":"","sources":["../../../../src/scripts/commands/commandTuiNeovimPrepare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IAChD,OAAO,CAAC,GAAG,CAAC,oCAAoC,YAAY,CAAC,CAAC,CAAC,qBAAqB,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IAC7G,MAAM,mBAAmB,CACvB,MAAM,CAAC,WAAW,CAAC,mBAAmB,EACtC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAC3B,MAAM,CAAC,WAAW,CACnB,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QACvB,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAA;QAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function commandTuiStart(): Promise<void>;
@@ -0,0 +1,30 @@
1
+ import path from "path";
2
+ import { createCypressSupportFile } from "../../server/cypress-support/createCypressSupportFile.js";
3
+ import { startTestServer } from "../../server/server.js";
4
+ import { updateTestdirectorySchemaFile } from "../../server/updateTestdirectorySchemaFile.js";
5
+ import { config, cwd } from "../tui.js";
6
+ export async function commandTuiStart() {
7
+ try {
8
+ await createCypressSupportFile({
9
+ cypressSupportDirectoryPath: path.join(cwd, "cypress", "support"),
10
+ supportFileName: "tui-sandbox.ts",
11
+ });
12
+ }
13
+ catch (e) {
14
+ console.error("Failed to createCypressSupportFile", e);
15
+ }
16
+ try {
17
+ await updateTestdirectorySchemaFile(config.directories);
18
+ }
19
+ catch (e) {
20
+ console.error("Failed to updateTestdirectorySchemaFile", e);
21
+ }
22
+ try {
23
+ console.log(`🚀 Starting test server in ${cwd} - this should be the root of your integration-tests directory 🤞🏻`);
24
+ await startTestServer(config);
25
+ }
26
+ catch (e) {
27
+ console.error("Failed to startTestServer", e);
28
+ }
29
+ }
30
+ //# sourceMappingURL=commandTuiStart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commandTuiStart.js","sourceRoot":"","sources":["../../../../src/scripts/commands/commandTuiStart.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAA;AACnG,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAA;AAC7F,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAEvC,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,IAAI,CAAC;QACH,MAAM,wBAAwB,CAAC;YAC7B,2BAA2B,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,CAAC;YACjE,eAAe,EAAE,gBAAgB;SAClC,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAA;IACxD,CAAC;IAED,IAAI,CAAC;QACH,MAAM,6BAA6B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IACzD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,CAAC,CAAC,CAAA;IAC7D,CAAC;IAED,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,8BAA8B,GAAG,qEAAqE,CAAC,CAAA;QACnH,MAAM,eAAe,CAAC,MAAM,CAAC,CAAA;IAC/B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAA;IAC/C,CAAC;AACH,CAAC"}
@@ -1,9 +1,12 @@
1
1
  export declare const parseArguments: (args: string[]) => Promise<ParseArgumentsResult | undefined>;
2
- export type ParseArgumentsResult = {
3
- action: "neovim prepare";
4
- } | {
2
+ export type ParseArgumentsResult = NeovimPrepare | NeovimExec | TuiStart;
3
+ export type NeovimExec = {
5
4
  action: "neovim exec";
6
5
  command: string;
7
- } | {
6
+ };
7
+ export type NeovimPrepare = {
8
+ action: "neovim prepare";
9
+ };
10
+ export type TuiStart = {
8
11
  action: "start";
9
12
  };
@@ -12,7 +12,7 @@ export const parseArguments = async (args) => {
12
12
  }
13
13
  }
14
14
  {
15
- // tui neovim exec <command> [<args>...]
15
+ // tui neovim exec <command> <args>
16
16
  const schema = z.tuple([z.literal("neovim"), z.literal("exec"), z.string()]);
17
17
  const execArguments = schema.safeParse(args);
18
18
  if (execArguments.success) {
@@ -1 +1 @@
1
- {"version":3,"file":"parseArguments.js","sourceRoot":"","sources":["../../../src/scripts/parseArguments.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAExB,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,IAAc,EAA6C,EAAE;IAChG,CAAC;QACC,qBAAqB;QACrB,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QACnE,MAAM,gBAAgB,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC/C,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO;gBACL,MAAM,EAAE,gBAAgB;aACzB,CAAA;QACH,CAAC;IACH,CAAC;IAED,CAAC;QACC,wCAAwC;QACxC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC5E,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC5C,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YACxC,MAAM,CAAC,OAAO,EAAE,qCAAqC,CAAC,CAAA;YACtD,OAAO;gBACL,MAAM,EAAE,aAAa;gBACrB,OAAO;aACR,CAAA;QACH,CAAC;IACH,CAAC;IAED,CAAC;QACC,YAAY;QACZ,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QACrC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;gBACL,MAAM,EAAE,OAAO;aAChB,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"parseArguments.js","sourceRoot":"","sources":["../../../src/scripts/parseArguments.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAExB,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,IAAc,EAA6C,EAAE;IAChG,CAAC;QACC,qBAAqB;QACrB,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QACnE,MAAM,gBAAgB,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC/C,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO;gBACL,MAAM,EAAE,gBAAgB;aACzB,CAAA;QACH,CAAC;IACH,CAAC;IAED,CAAC;QACC,mCAAmC;QACnC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC5E,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC5C,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YACxC,MAAM,CAAC,OAAO,EAAE,qCAAqC,CAAC,CAAA;YACtD,OAAO;gBACL,MAAM,EAAE,aAAa;gBACrB,OAAO;aACR,CAAA;QACH,CAAC;IACH,CAAC;IAED,CAAC;QACC,YAAY;QACZ,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QACrC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;gBACL,MAAM,EAAE,OAAO;aAChB,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { describe, expect, it } from "vitest";
1
2
  import { parseArguments } from "./parseArguments.js";
2
3
  it(`can parse "neovim prepare"`, async () => {
3
4
  expect(await parseArguments(["neovim", "prepare"])).toEqual({ action: "neovim prepare" });
@@ -1 +1 @@
1
- {"version":3,"file":"parseArguments.test.js","sourceRoot":"","sources":["../../../src/scripts/parseArguments.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAA;IACzF,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;AAC5E,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;IAC5G,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;QAChE,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;IAChF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;IACjC,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;IACpE,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;AAChE,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"parseArguments.test.js","sourceRoot":"","sources":["../../../src/scripts/parseArguments.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;IAC1C,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAA;IACzF,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;AAC5E,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;IAC5G,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;QAChE,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;IAChF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;IACjC,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;IACpE,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;AAChE,CAAC,CAAC,CAAA"}
@@ -1 +1,10 @@
1
- export {};
1
+ /** The cwd in the user's directory when they are running this script. Not the
2
+ * cwd of the script itself. */
3
+ export declare const cwd: string;
4
+ export declare const config: {
5
+ directories: {
6
+ testEnvironmentPath: string;
7
+ outputFilePath: string;
8
+ };
9
+ port: number;
10
+ };
@@ -1,61 +1,7 @@
1
- var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
2
- if (value !== null && value !== void 0) {
3
- if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
4
- var dispose, inner;
5
- if (async) {
6
- if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
7
- dispose = value[Symbol.asyncDispose];
8
- }
9
- if (dispose === void 0) {
10
- if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
11
- dispose = value[Symbol.dispose];
12
- if (async) inner = dispose;
13
- }
14
- if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
15
- if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
16
- env.stack.push({ value: value, dispose: dispose, async: async });
17
- }
18
- else if (async) {
19
- env.stack.push({ async: true });
20
- }
21
- return value;
22
- };
23
- var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
24
- return function (env) {
25
- function fail(e) {
26
- env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
27
- env.hasError = true;
28
- }
29
- var r, s = 0;
30
- function next() {
31
- while (r = env.stack.pop()) {
32
- try {
33
- if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
34
- if (r.dispose) {
35
- var result = r.dispose.call(r.value);
36
- if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
37
- }
38
- else s |= 1;
39
- }
40
- catch (e) {
41
- fail(e);
42
- }
43
- }
44
- if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
45
- if (env.hasError) throw env.error;
46
- }
47
- return next();
48
- };
49
- })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
50
- var e = new Error(message);
51
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
52
- });
53
1
  import path from "node:path";
54
- import { installDependencies } from "../server/applications/neovim/api.js";
55
- import { NeovimApplication } from "../server/applications/neovim/NeovimApplication.js";
56
- import { prepareNewTestDirectory } from "../server/applications/neovim/prepareNewTestDirectory.js";
57
- import { createCypressSupportFile } from "../server/cypress-support/createCypressSupportFile.js";
58
- import { startTestServer, updateTestdirectorySchemaFile } from "../server/index.js";
2
+ import { commandTuiNeovimExec } from "./commands/commandTuiNeovimExec.js";
3
+ import { commandTuiNeovimPrepare } from "./commands/commandTuiNeovimPrepare.js";
4
+ import { commandTuiStart } from "./commands/commandTuiStart.js";
59
5
  import { parseArguments } from "./parseArguments.js";
60
6
  //
61
7
  // This is the main entrypoint to tui-sandbox
@@ -63,8 +9,8 @@ import { parseArguments } from "./parseArguments.js";
63
9
  const outputFileName = "MyTestDirectory.ts";
64
10
  /** The cwd in the user's directory when they are running this script. Not the
65
11
  * cwd of the script itself. */
66
- const cwd = process.cwd();
67
- const config = {
12
+ export const cwd = process.cwd();
13
+ export const config = {
68
14
  directories: {
69
15
  testEnvironmentPath: path.join(cwd, "test-environment/"),
70
16
  outputFilePath: path.join(cwd, outputFileName),
@@ -76,64 +22,15 @@ const args = process.argv.slice(2);
76
22
  const command = await parseArguments(args);
77
23
  switch (command?.action) {
78
24
  case "neovim prepare": {
79
- const NVIM_APPNAME = process.env["NVIM_APPNAME"];
80
- console.log(`🚀 Installing neovim dependencies${NVIM_APPNAME ? ` for NVIM_APPNAME=${NVIM_APPNAME}` : ""}...`);
81
- await installDependencies(config.directories.testEnvironmentPath, process.env["NVIM_APPNAME"], config.directories).catch((err) => {
82
- console.error("Error installing neovim dependencies", err);
83
- process.exit(1);
84
- });
85
- process.exit(0);
25
+ await commandTuiNeovimPrepare();
26
+ break;
86
27
  }
87
28
  case "neovim exec": {
88
- const env_1 = { stack: [], error: void 0, hasError: false };
89
- try {
90
- // automatically dispose of the neovim instance when done
91
- const app = __addDisposableResource(env_1, new NeovimApplication(config.directories.testEnvironmentPath), true);
92
- app.events.on("stdout", data => {
93
- console.log(` neovim output: ${data}`);
94
- });
95
- const testDirectory = await prepareNewTestDirectory(config.directories);
96
- await app.startNextAndKillCurrent(testDirectory, {
97
- filename: "empty.txt",
98
- headlessCmd: command.command,
99
- NVIM_APPNAME: process.env["NVIM_APPNAME"],
100
- }, { cols: 80, rows: 24 });
101
- await app.application.untilExit();
102
- break;
103
- }
104
- catch (e_1) {
105
- env_1.error = e_1;
106
- env_1.hasError = true;
107
- }
108
- finally {
109
- const result_1 = __disposeResources(env_1);
110
- if (result_1)
111
- await result_1;
112
- }
29
+ await commandTuiNeovimExec(command);
30
+ break;
113
31
  }
114
32
  case "start": {
115
- try {
116
- await createCypressSupportFile({
117
- cypressSupportDirectoryPath: path.join(cwd, "cypress", "support"),
118
- supportFileName: "tui-sandbox.ts",
119
- });
120
- }
121
- catch (e) {
122
- console.error("Failed to createCypressSupportFile", e);
123
- }
124
- try {
125
- await updateTestdirectorySchemaFile(config.directories);
126
- }
127
- catch (e) {
128
- console.error("Failed to updateTestdirectorySchemaFile", e);
129
- }
130
- try {
131
- console.log(`🚀 Starting test server in ${cwd} - this should be the root of your integration-tests directory 🤞🏻`);
132
- await startTestServer(config);
133
- }
134
- catch (e) {
135
- console.error("Failed to startTestServer", e);
136
- }
33
+ await commandTuiStart();
137
34
  break;
138
35
  }
139
36
  default: {
@@ -1 +1 @@
1
- {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../src/scripts/tui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../src/scripts/tui.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAA;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,EAAE;AACF,6CAA6C;AAC7C,EAAE;AAEF,MAAM,cAAc,GAAG,oBAAoB,CAAA;AAE3C;+BAC+B;AAC/B,MAAM,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;AAChC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,WAAW,EAAE;QACX,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC;QACxD,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC;KAC/C;IACD,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;CACtC,CAAA;AAE5B,uDAAuD;AACvD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAElC,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;AAE1C,QAAQ,OAAO,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,gBAAgB,CAAC,CAAC,CAAC;QACtB,MAAM,uBAAuB,EAAE,CAAA;QAC/B,MAAK;IACP,CAAC;IACD,KAAK,aAAa,CAAC,CAAC,CAAC;QACnB,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAA;QACnC,MAAK;IACP,CAAC;IACD,KAAK,OAAO,CAAC,CAAC,CAAC;QACb,MAAM,eAAe,EAAE,CAAA;QACvB,MAAK;IACP,CAAC;IACD,OAAO,CAAC,CAAC,CAAC;QACR,OAA2B,CAAA;QAC3B,gBAAgB,EAAE,CAAA;IACpB,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO,CAAC,GAAG,CACT;QACE,EAAE;QACF,mBAAmB;QACnB,eAAe;QACf,oCAAoC;QACpC,wBAAwB;KACzB,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAA;IAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { access } from "fs/promises";
2
2
  import { attach } from "neovim";
3
+ import { afterEach, beforeEach, expect, it, vi } from "vitest";
3
4
  import { connectNeovimApi } from "./NeovimJavascriptApiClient.js";
4
5
  vi.mock("neovim");
5
6
  vi.mock("fs/promises");
@@ -1 +1 @@
1
- {"version":3,"file":"NeovimJavascriptApiClient.test.js","sourceRoot":"","sources":["../../../../../src/server/applications/neovim/NeovimJavascriptApiClient.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEjE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AACjB,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;AAEtB,MAAM,MAAM,GAAG;IACb,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;IACzB,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;IACzB,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE;QACpD,EAAE;IACJ,CAAC,CAAC;CACH,CAAA;AACD,MAAM,eAAe,GAAG,GAA6B,CAAA;AAErD,UAAU,CAAC,GAAG,EAAE;IACd,EAAE,CAAC,aAAa,EAAE,CAAA;AACpB,CAAC,CAAC,CAAA;AAEF,SAAS,CAAC,GAAG,EAAE;IACb,EAAE,CAAC,aAAa,EAAE,CAAA;AACpB,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;IACrD,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAA;IACvE,gBAAgB,CAAC,WAAW,CAAC,CAAA;IAE7B,EAAE,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;IACvC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;AAC9C,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;IACvE,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAA;IAC1C,MAAM,UAAU,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAA;IAChD,MAAM,UAAU,CAAC,GAAG,EAAE,CAAA;IAEtB,EAAE,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;IACvC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC;QACzC,MAAM,EAAE,WAAW;QACnB,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAU;SACpC;KAC8C,CAAC,CAAA;IAClD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;AAChD,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"NeovimJavascriptApiClient.test.js","sourceRoot":"","sources":["../../../../../src/server/applications/neovim/NeovimJavascriptApiClient.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEjE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AACjB,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;AAEtB,MAAM,MAAM,GAAG;IACb,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;IACzB,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;IACzB,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE;QACpD,EAAE;IACJ,CAAC,CAAC;CACH,CAAA;AACD,MAAM,eAAe,GAAG,GAA6B,CAAA;AAErD,UAAU,CAAC,GAAG,EAAE;IACd,EAAE,CAAC,aAAa,EAAE,CAAA;AACpB,CAAC,CAAC,CAAA;AAEF,SAAS,CAAC,GAAG,EAAE;IACb,EAAE,CAAC,aAAa,EAAE,CAAA;AACpB,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;IACrD,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAA;IACvE,gBAAgB,CAAC,WAAW,CAAC,CAAA;IAE7B,EAAE,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;IACvC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;AAC9C,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;IACvE,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAA;IAC1C,MAAM,UAAU,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAA;IAChD,MAAM,UAAU,CAAC,GAAG,EAAE,CAAA;IAEtB,EAAE,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;IACvC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC;QACzC,MAAM,EAAE,WAAW;QACnB,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAU;SACpC;KAC8C,CAAC,CAAA;IAClD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;AAChD,CAAC,CAAC,CAAA"}
@@ -52,7 +52,7 @@ var __disposeResources = (this && this.__disposeResources) || (function (Suppres
52
52
  });
53
53
  import fs from "fs";
54
54
  import nodePath from "path";
55
- import { expect, it } from "vitest";
55
+ import { expect, it, vi } from "vitest";
56
56
  import { createTempDir } from "./createTempDir.js";
57
57
  vi.spyOn(console, "log").mockImplementation(vi.fn());
58
58
  class TempDirectory {
@@ -1 +1 @@
1
- {"version":3,"file":"createTempDir.test.js","sourceRoot":"","sources":["../../../../../../src/server/applications/neovim/environment/createTempDir.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AACnB,OAAO,QAAQ,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;AAIpD,MAAM,aAAa;IACW;IAA5B,YAA4B,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAAG,CAAC;IAErC,MAAM,CAAC,MAAM;QAClB,MAAM,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,gBAA4C,CAAC,CAAA;QACxE,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC1C,OAAO,IAAI,aAAa,CAAC,YAAY,CAAC,CAAA;IACxC,CAAC;IAED,CAAC,MAAM,CAAC,OAAO,CAAC;QACd,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAA;IAC7D,CAAC;CACF;AAED,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;;;QACzD,iFAAiF;QACjF,MAAM,GAAG,kCAAG,aAAa,CAAC,MAAM,EAAE,QAAA,CAAA;QAClC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;YACjC,mBAAmB,EAAE,GAAG,CAAC,IAAI;YAC7B,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,oBAAoB,CAAC;SAC9D,CAAC,CAAA;QAEF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACnC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACpD,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,gBAA4C,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QACtG,MAAM,CAAC,MAAM,CAAC,2BAA2B,CAAC,QAAQ,CAAC,UAAiC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;;;;;;;;;CACpG,CAAC,CAAA"}
1
+ {"version":3,"file":"createTempDir.test.js","sourceRoot":"","sources":["../../../../../../src/server/applications/neovim/environment/createTempDir.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AACnB,OAAO,QAAQ,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAEvC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;AAIpD,MAAM,aAAa;IACW;IAA5B,YAA4B,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAAG,CAAC;IAErC,MAAM,CAAC,MAAM;QAClB,MAAM,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,gBAA4C,CAAC,CAAA;QACxE,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC1C,OAAO,IAAI,aAAa,CAAC,YAAY,CAAC,CAAA;IACxC,CAAC;IAED,CAAC,MAAM,CAAC,OAAO,CAAC;QACd,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAA;IAC7D,CAAC;CACF;AAED,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;;;QACzD,iFAAiF;QACjF,MAAM,GAAG,kCAAG,aAAa,CAAC,MAAM,EAAE,QAAA,CAAA;QAClC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;YACjC,mBAAmB,EAAE,GAAG,CAAC,IAAI;YAC7B,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,oBAAoB,CAAC;SAC9D,CAAC,CAAA;QAEF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACnC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACpD,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,gBAA4C,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QACtG,MAAM,CAAC,MAAM,CAAC,2BAA2B,CAAC,QAAQ,CAAC,UAAiC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;;;;;;;;;CACpG,CAAC,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import { rm } from "fs/promises";
2
2
  import path from "path";
3
+ import { assert, describe, expect, it } from "vitest";
3
4
  import { prepareNewTestDirectory } from "./prepareNewTestDirectory.js";
4
5
  describe("prepareNewTestDirectory when the testEnvironmentPath does not exist", () => {
5
6
  it("should be able to create a new test directory", async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"prepareNewTestDirectory.test.js","sourceRoot":"","sources":["../../../../../src/server/applications/neovim/prepareNewTestDirectory.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAChC,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AAEtE,QAAQ,CAAC,qEAAqE,EAAE,GAAG,EAAE;IACnF,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC7D,wEAAwE;QACxE,2BAA2B;QAC3B,MAAM,mBAAmB,GAAG,WAAW,CAAA;QACvC,MAAM,aAAa,GAAG,MAAM,uBAAuB,CAAC;YAClD,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC;YACxD,mBAAmB;SACpB,CAAC,CAAA;QAEF,IAAI,CAAC;YACH,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAC1C,MAAM,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAChE,CAAC;gBAAS,CAAC;YACT,sCAAsC;YACtC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;YAC/C,MAAM,EAAE,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACpD,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"prepareNewTestDirectory.test.js","sourceRoot":"","sources":["../../../../../src/server/applications/neovim/prepareNewTestDirectory.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAChC,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AACrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AAEtE,QAAQ,CAAC,qEAAqE,EAAE,GAAG,EAAE;IACnF,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC7D,wEAAwE;QACxE,2BAA2B;QAC3B,MAAM,mBAAmB,GAAG,WAAW,CAAA;QACvC,MAAM,aAAa,GAAG,MAAM,uBAAuB,CAAC;YAClD,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC;YACxD,mBAAmB;SACpB,CAAC,CAAA;QAEF,IAAI,CAAC;YACH,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAC1C,MAAM,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAChE,CAAC;gBAAS,CAAC;YACT,sCAAsC;YACtC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;YAC/C,MAAM,EAAE,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACpD,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { describe, expect, it } from "vitest";
1
2
  import { getCwd } from "./runBlockingShellCommand.js";
2
3
  describe("getCwd", () => {
3
4
  it("prefers cwdRelative if it is defined", () => {