Files
mnote/scripts/task-dev-hot-plan-test.js

56 lines
2.0 KiB
JavaScript

#!/usr/bin/env node
"use strict";
const assert = require("node:assert");
const { buildDevHotEnv } = require("./dev-hot.js");
const env = buildDevHotEnv({
FRONTEND_PORT: "3200",
MNOTE_WEB_CMD: "",
});
assert.equal(env.MNOTE_WEB_DEV_HOT_RELOAD, "1");
assert.equal(env.MNOTE_WEB_ALLOW_DEV_FIXTURES, "1");
assert.match(env.MNOTE_WEB_CMD, /cargo watch/);
assert.match(env.MNOTE_WEB_CMD, /run -p mnote-web --bin mnote-web/);
assert.match(env.MNOTE_WEB_CMD, /crates\/mnote-web\/src/);
assert.match(env.MNOTE_WEB_CMD, /crates\/mnote-web\/browser/);
assert.equal(env.FRONTEND_PORT, "3200");
assert.equal(env.MNOTE_WEB_BIND, "0.0.0.0:3200");
assert.equal(env.MNOTE_KNOWLEDGE_PROVIDER, "lightrag_legacy");
assert.equal(env.MNOTE_OPENCODE_BASE_URL, undefined);
assert.equal(env.ENABLE_OPENHUB, undefined);
assert.equal(env.CHECK_OPENHUB_HEALTH, undefined);
assert.equal(env.OPENHUB_OPENCODE_BASE_URL, undefined);
assert.equal(env.OPENHUB_BACKEND_DIR, undefined);
assert.equal(env.MNOTE_OPENHUB_BASE_URL, undefined);
assert.equal(env.MNOTE_CONTROL_PLANE_BACKEND, "libsql-local");
assert.equal(env.MNOTE_TURSO_LOCAL_PATH, "/mnt/Data1T/Mnote_data/control-plane/control-plane-dev-hot-libsql.db");
assert.equal(env.MNOTE_CONTROL_PLANE_DB_PATH, undefined);
const explicitKnowledgeProviderEnv = buildDevHotEnv({
MNOTE_KNOWLEDGE_PROVIDER: "lightrag_legacy",
});
assert.equal(explicitKnowledgeProviderEnv.MNOTE_KNOWLEDGE_PROVIDER, "lightrag_legacy");
const loopbackEnv = buildDevHotEnv({
MNOTE_WEB_BIND: "127.0.0.1:3300",
MNOTE_WEB_CMD: "custom",
});
assert.equal(loopbackEnv.MNOTE_WEB_BIND, "0.0.0.0:3300");
assert.equal(loopbackEnv.MNOTE_WEB_CMD, "custom");
const fixturesDisabledEnv = buildDevHotEnv({
MNOTE_WEB_ALLOW_DEV_FIXTURES: "0",
});
assert.equal(fixturesDisabledEnv.MNOTE_WEB_ALLOW_DEV_FIXTURES, "0");
assert.throws(
() => buildDevHotEnv({
MNOTE_CONTROL_PLANE_BACKEND: "sqlite",
}),
/不再支持 SQLite control-plane fallback/,
);
console.log(JSON.stringify({ ok: true, command: env.MNOTE_WEB_CMD }, null, 2));