Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/Java/Openclaw/test/scripts/   (KI Agentensystem Version 22©)  Datei vom 26.3.2026 mit Größe 2 kB image not shown  

Quelle  ts-guard-utils.test.ts

  Sprache: JAVA
 

Spracherkennung für: .ts vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

import { existsSync } from "node:fs";
import path from "node:path";
import { pathToFileURL } from "node:url";
import { describe, expect, it } from "vitest";
import { resolveRepoRoot } from "../../scripts/lib/ts-guard-utils.mjs";

/**
 * Regression tests for resolveRepoRoot().
 *
 * The original implementation went up exactly two levels from the caller's
 * import.meta.url, which broke for scripts at scripts/*.mjs (one level below
 * root) — it overshot to the repo's parent directory.
 */
describe("resolveRepoRoot", () => {
  it("resolves correctly from a scripts/lib/*.mjs path (two levels below root)", () => {
    const fakeUrl = pathToFileURL(path.resolve("scripts", "lib", "some-guard-utils.mjs")).href;
    const root = resolveRepoRoot(fakeUrl);

    expect(existsSync(path.join(root, ".git"))).toBe(true);
    expect(existsSync(path.join(root, "package.json"))).toBe(true);
  });

  it("resolves correctly from a scripts/*.mjs path (one level below root)", () => {
    const fakeUrl = pathToFileURL(path.resolve("scripts", "check-no-raw-channel-fetch.mjs")).href;
    const root = resolveRepoRoot(fakeUrl);

    expect(existsSync(path.join(root, ".git"))).toBe(true);
    expect(existsSync(path.join(root, "package.json"))).toBe(true);
  });

  it("resolves correctly from a deeply nested extension path", () => {
    const fakeUrl = pathToFileURL(
      path.resolve("extensions", "qqbot", "src", "utils", "hypothetical.mjs"),
    ).href;
    const root = resolveRepoRoot(fakeUrl);

    expect(existsSync(path.join(root, ".git"))).toBe(true);
    expect(existsSync(path.join(root, "package.json"))).toBe(true);
  });

  it("all caller depths resolve to the same root", () => {
    const fromLib = resolveRepoRoot(pathToFileURL(path.resolve("scripts", "lib", "a.mjs")).href);
    const fromScripts = resolveRepoRoot(pathToFileURL(path.resolve("scripts", "b.mjs")).href);
    const fromExtension = resolveRepoRoot(
      pathToFileURL(path.resolve("extensions", "qqbot", "c.mjs")).href,
    );

    expect(fromLib).toBe(fromScripts);
    expect(fromScripts).toBe(fromExtension);
  });
});

¤ Dauer der Verarbeitung: 0.10 Sekunden  (vorverarbeitet am  2026-04-27) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.