From 5de9010a9fe91ee35a0ca4f66f8df97a8cd1926c Mon Sep 17 00:00:00 2001 From: NullVoxPopuli <199018+NullVoxPopuli@users.noreply.github.com> Date: Thu, 23 Jan 2025 18:13:11 -0500 Subject: [PATCH] Fix node smoke --- smoke-tests/node/package.json | 24 +++---- smoke-tests/node/setup.ts | 19 ++++++ smoke-tests/node/tests/syntax.test.ts | 90 ++++++++++++++++++++++++++- 3 files changed, 120 insertions(+), 13 deletions(-) diff --git a/smoke-tests/node/package.json b/smoke-tests/node/package.json index 830fbe6b7..3abb4e424 100644 --- a/smoke-tests/node/package.json +++ b/smoke-tests/node/package.json @@ -21,21 +21,21 @@ "tsconfig": "../../tsconfig.json" }, "dependencies": { - "@glimmer/syntax": "file:packages/@glimmer/syntax.tgz", - "@glimmer/util": "file:packages/@glimmer/util.tgz", - "@glimmer/wire-format": "file:packages/@glimmer/wire-format.tgz", - "@glimmer/compiler": "file:packages/@glimmer/compiler.tgz", - "@glimmer/interfaces": "file:packages/@glimmer/interfaces.tgz", - "@glimmer/runtime": "file:packages/@glimmer/runtime.tgz" + "@glimmer/syntax": "file:./packages/@glimmer/syntax.tgz", + "@glimmer/util": "file:./packages/@glimmer/util.tgz", + "@glimmer/wire-format": "file:./packages/@glimmer/wire-format.tgz", + "@glimmer/compiler": "file:./packages/@glimmer/compiler.tgz", + "@glimmer/interfaces": "file:./packages/@glimmer/interfaces.tgz", + "@glimmer/runtime": "file:./packages/@glimmer/runtime.tgz" }, "pnpm": { "overrides": { - "@glimmer/syntax": "file:packages/@glimmer/syntax.tgz", - "@glimmer/util": "file:packages/@glimmer/util.tgz", - "@glimmer/wire-format": "file:packages/@glimmer/wire-format.tgz", - "@glimmer/compiler": "file:packages/@glimmer/compiler.tgz", - "@glimmer/interfaces": "file:packages/@glimmer/interfaces.tgz", - "@glimmer/runtime": "file:packages/@glimmer/runtime.tgz" + "@glimmer/syntax": "file:./packages/@glimmer/syntax.tgz", + "@glimmer/util": "file:./packages/@glimmer/util.tgz", + "@glimmer/wire-format": "file:./packages/@glimmer/wire-format.tgz", + "@glimmer/compiler": "file:./packages/@glimmer/compiler.tgz", + "@glimmer/interfaces": "file:./packages/@glimmer/interfaces.tgz", + "@glimmer/runtime": "file:./packages/@glimmer/runtime.tgz" } } } diff --git a/smoke-tests/node/setup.ts b/smoke-tests/node/setup.ts index 9cd389f05..91bed1fbc 100644 --- a/smoke-tests/node/setup.ts +++ b/smoke-tests/node/setup.ts @@ -10,12 +10,22 @@ function inRoot(cmd: string, options = {}) { return inDir(WORKSPACE_ROOT, cmd, options); } +let asBin = false; + +function log(msg: any) { + if (asBin) { + console.info(msg); + } +} + function inDir(dir: string, cmd: string, options = {}) { return $({ cwd: dir, preferLocal: true, shell: true, ...options, + // execa types are wrong? + // @ts-expect-error })(cmd); } @@ -44,11 +54,20 @@ export async function prepare() { let pack = (out: string) => `pnpm pack --out ${join(NODE_SMOKE_DIR, 'packages', out)}.tgz`; for (let dep of deps) { + log(`Packing ${dep}`); await inDir(join(WORKSPACE_ROOT, `packages/${dep}`), pack(dep)); } } if (process.argv[1] === import.meta.filename) { + asBin = true; + log(`Setting up smoke test packages`); + log({ WORKSPACE_ROOT, NODE_SMOKE_DIR }); + await prepare(); + + log(`Installing Deps`); await inNodeSmoke(`pnpm install --ignore-workspace`); + + log(`Done`); } diff --git a/smoke-tests/node/tests/syntax.test.ts b/smoke-tests/node/tests/syntax.test.ts index a86a703ec..8c5a927c9 100644 --- a/smoke-tests/node/tests/syntax.test.ts +++ b/smoke-tests/node/tests/syntax.test.ts @@ -3,6 +3,94 @@ import { describe, it, expect } from 'vitest'; describe('@glimmer/syntax', () => { it('process()', () => { - expect(preprocess('

')).toMatchInlineSnapshot(); + expect(preprocess('

')).toMatchInlineSnapshot(` + { + "blockParams": [], + "body": [ + { + "attributes": [], + "blockParams": [], + "children": [], + "closeTag": { + "end": { + "column": 9, + "line": 1, + }, + "start": { + "column": 4, + "line": 1, + }, + }, + "comments": [], + "loc": { + "end": { + "column": 9, + "line": 1, + }, + "start": { + "column": 0, + "line": 1, + }, + }, + "modifiers": [], + "openTag": { + "end": { + "column": 4, + "line": 1, + }, + "start": { + "column": 0, + "line": 1, + }, + }, + "params": [], + "path": { + "head": { + "loc": { + "end": { + "column": 3, + "line": 1, + }, + "start": { + "column": 1, + "line": 1, + }, + }, + "name": "h1", + "original": "h1", + "type": "VarHead", + }, + "loc": { + "end": { + "column": 3, + "line": 1, + }, + "start": { + "column": 1, + "line": 1, + }, + }, + "original": "h1", + "tail": [], + "type": "PathExpression", + }, + "selfClosing": false, + "tag": "h1", + "type": "ElementNode", + }, + ], + "loc": { + "end": { + "column": 9, + "line": 1, + }, + "start": { + "column": 0, + "line": 1, + }, + }, + "type": "Template", + } + `); }); });