feat(status-ui): improve bridge recovery and desktop controls
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
import assert from "node:assert/strict";
|
||||
import { readFile } from "node:fs/promises";
|
||||
import test from "node:test";
|
||||
|
||||
test("documents and exposes simple user-service lifecycle commands", async () => {
|
||||
const [readme, uiReadme, packageJson, uiPackageJson] = await Promise.all([
|
||||
readFile("README.md", "utf8"),
|
||||
readFile("ui/README.md", "utf8"),
|
||||
readFile("package.json", "utf8"),
|
||||
readFile("ui/package.json", "utf8"),
|
||||
]);
|
||||
let manifest;
|
||||
try {
|
||||
manifest = JSON.parse(packageJson);
|
||||
} catch (error) {
|
||||
assert.fail(`package.json must contain valid JSON: ${String(error)}`);
|
||||
}
|
||||
const scripts = manifest.scripts;
|
||||
for (const command of [
|
||||
"install",
|
||||
"start",
|
||||
"restart",
|
||||
"stop",
|
||||
"status",
|
||||
"logs",
|
||||
])
|
||||
assert.equal(
|
||||
typeof scripts[`bridge:service:${command}`],
|
||||
"string",
|
||||
`missing bridge:service:${command}`,
|
||||
);
|
||||
let uiManifest;
|
||||
try {
|
||||
uiManifest = JSON.parse(uiPackageJson);
|
||||
} catch (error) {
|
||||
assert.fail(`ui/package.json must contain valid JSON: ${String(error)}`);
|
||||
}
|
||||
assert.match(readme, /npm run bridge:service:restart/);
|
||||
assert.match(readme, /pi-status-ui --toggle/);
|
||||
assert.match(readme, /Restart Pi.*selected directory/);
|
||||
assert.match(uiReadme, /bridge:service:install/);
|
||||
assert.match(uiReadme, /tauri:release/);
|
||||
assert.equal(uiManifest.scripts["tauri:release"], "tauri build --no-bundle");
|
||||
});
|
||||
Reference in New Issue
Block a user