/
raiden
/
obsidian-git-encrypt
Обзор
Документация
Войти
/
raiden
/
obsidian-git-encrypt
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
tests/security/runtimeSurface.test.ts
35 строк
1 KB
Robert Kuzhin
fix: render setting validation compatibly
09 авг 2026, 14:13
09 авг 2026, 14:13
a6f453b
Код
Авторство
О чём код?
import { readFile, readdir } from "node:fs/promises"; import path from "node:path"; import { describe, expect, it } from "vitest"; describe("runtime security surface", () => { it("does not write runtime data to browser storage or plaintext console logs", async () => { const source = await readRuntimeSource(); expect(source).not.toMatch(/\b(?:localStorage|sessionStorage)\b/u); expect(source).not.toMatch(/\bconsole\.(?:debug|error|info|log|trace|warn)\s*\(/u); }); it("never enables a shell for Git subprocesses", async () => { const source = await readRuntimeSource(); expect(source).not.toContain("shell: true"); expect(source).toContain("shell: false"); }); it("does not depend on the optional Setting error-message API", async () => { const source = await readRuntimeSource(); expect(source).not.toContain(".setErrorMessage("); }); }); async function readRuntimeSource(): Promise<string> { const chunks: string[] = []; for (const entry of await readdir("src", { recursive: true, withFileTypes: true })) { if (!entry.isFile() || !entry.name.endsWith(".ts")) continue; chunks.push(await readFile(path.join(entry.parentPath, entry.name), "utf8")); } return chunks.join("\n"); }