fix(#2116): use resolvable paths in surface.md require + correct package name
Four require() examples in commands/gsd/surface.md used bare 'gsd-core/...' specifiers that Node cannot resolve (wrong package name + runtime-mirror layout off module path). Now derives the path from runtimeConfigDir. Also fixes reinstall hint from 'npm i -g gsd-core' to 'npm i -g @opengsd/gsd-core'.
This commit is contained in:
41
tests/surface-md-paths.regression.test.cjs
Normal file
41
tests/surface-md-paths.regression.test.cjs
Normal file
@@ -0,0 +1,41 @@
|
||||
/**
|
||||
* Regression test for #2116 — commands/gsd/surface.md had unresolvable bare
|
||||
* `require('gsd-core/...')` specifiers and a wrong-package reinstall hint
|
||||
* (`npm i -g gsd-core` instead of `@opengsd/gsd-core`).
|
||||
*
|
||||
* This test asserts the doc uses resolvable paths (derived from runtimeConfigDir)
|
||||
* and the correct scoped package name in the reinstall hint.
|
||||
*/
|
||||
'use strict';
|
||||
|
||||
const { describe, test } = require('node:test');
|
||||
const assert = require('node:assert/strict');
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
|
||||
const SURFACE_MD = path.join(__dirname, '..', 'commands', 'gsd', 'surface.md');
|
||||
|
||||
describe('#2116 regression: surface.md resolvable require + correct package', () => {
|
||||
const content = fs.readFileSync(SURFACE_MD, 'utf-8');
|
||||
|
||||
test('no bare require("gsd-core/...") specifiers', () => {
|
||||
assert.ok(
|
||||
!content.match(/require\s*\(\s*['"]gsd-core\//),
|
||||
'surface.md should not use bare require(\'gsd-core/...\') — use runtimeConfigDir-derived path (#2116)'
|
||||
);
|
||||
});
|
||||
|
||||
test('reinstall hint uses scoped package name', () => {
|
||||
assert.ok(
|
||||
content.includes('@opengsd/gsd-core'),
|
||||
'surface.md reinstall hint should reference @opengsd/gsd-core, not bare gsd-core (#2116)'
|
||||
);
|
||||
});
|
||||
|
||||
test('require examples use runtimeConfigDir-derived paths', () => {
|
||||
assert.ok(
|
||||
content.includes("require(runtimeConfigDir + '/gsd-core/bin/lib/capability-registry.cjs')"),
|
||||
'surface.md require examples should derive the path from runtimeConfigDir (#2116)'
|
||||
);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user