@atlisp/cli 1.2.0 → 1.2.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.
- package/commands/test.js +8 -6
- package/package.json +1 -1
package/commands/test.js
CHANGED
|
@@ -4,6 +4,7 @@ const os = require("os");
|
|
|
4
4
|
const chalk = require("chalk");
|
|
5
5
|
const { execSync } = require("child_process");
|
|
6
6
|
const common = require("../lib/common");
|
|
7
|
+
const { withMcp } = require("../lib/mcp-client");
|
|
7
8
|
const KERNEL_SRC = common.getKernelSrc();
|
|
8
9
|
const TEST_DIR = common.getKernelTest();
|
|
9
10
|
const KERNEL_ORDER = (() => {
|
|
@@ -12,8 +13,9 @@ const KERNEL_ORDER = (() => {
|
|
|
12
13
|
})();
|
|
13
14
|
|
|
14
15
|
async function cmdTest(filter, opts) {
|
|
15
|
-
const
|
|
16
|
-
const
|
|
16
|
+
const kernelRoot = path.join(__dirname, "..", "..", "kernel");
|
|
17
|
+
const testDir = path.join(kernelRoot, "test");
|
|
18
|
+
const srcDir = path.join(kernelRoot, "src");
|
|
17
19
|
|
|
18
20
|
if (opts && opts.load) {
|
|
19
21
|
const kernelFiles = KERNEL_ORDER;
|
|
@@ -132,7 +134,7 @@ async function cmdTest(filter, opts) {
|
|
|
132
134
|
try {
|
|
133
135
|
const output = await withMcp(async (mcp) => {
|
|
134
136
|
await mcp.ensureDocument();
|
|
135
|
-
const _modDir = path.join(
|
|
137
|
+
const _modDir = path.join(kernelRoot, "modules").replace(/\\/g, "/");
|
|
136
138
|
const _runnerPath = path.join(testDir, "test-runner.lsp").replace(/\\/g, "/");
|
|
137
139
|
const _lispDir = path.join(os.homedir(), "@lisp").replace(/\\/g, "/");
|
|
138
140
|
console.log(chalk.gray(" 1/8 Loading @lisp kernel via file content..."));
|
|
@@ -140,8 +142,8 @@ async function cmdTest(filter, opts) {
|
|
|
140
142
|
await mcp.evalLisp(kernelRaw);
|
|
141
143
|
console.log(chalk.gray(" 2/8 Setting up environment + modules + runner..."));
|
|
142
144
|
const _stubsPath = path.join(testDir, "test-stubs.lsp").replace(/\\/g, "/");
|
|
143
|
-
const _modNetworkRaw = fs.readFileSync(path.join(
|
|
144
|
-
const _modPkgmanRaw = fs.readFileSync(path.join(
|
|
145
|
+
const _modNetworkRaw = fs.readFileSync(path.join(kernelRoot, "modules", "network.lsp"), "utf-8");
|
|
146
|
+
const _modPkgmanRaw = fs.readFileSync(path.join(kernelRoot, "modules", "pkgman.lsp"), "utf-8");
|
|
145
147
|
const _stubsRaw = fs.readFileSync(path.join(testDir, "test-stubs.lsp"), "utf-8");
|
|
146
148
|
const _runnerRaw = fs.readFileSync(path.join(testDir, "test-runner.lsp"), "utf-8");
|
|
147
149
|
const setupCode = `
|
|
@@ -212,7 +214,7 @@ ${skipArg}
|
|
|
212
214
|
|
|
213
215
|
async function handler(args) {
|
|
214
216
|
const opts = common.parseArgs(args);
|
|
215
|
-
const testFilter = args.find(a => !a.startsWith("--")) || undefined;
|
|
217
|
+
const testFilter = args.find((a, i) => !a.startsWith("--") && (i === 0 || !args[i - 1].startsWith("--"))) || undefined;
|
|
216
218
|
await cmdTest(testFilter, opts);
|
|
217
219
|
}
|
|
218
220
|
|