import { describe, expect, it } from "vite-plus/test"; import { formatWorkspaceRelativePath } from "./filePathDisplay"; describe("formatWorkspaceRelativePath", () => { it("formats absolute workspace paths from the workspace root", () => { expect( formatWorkspaceRelativePath( "C:/Users/mike/dev-stuff/t3code/apps/web/src/session-logic.ts:501", "C:/Users/mike/dev-stuff/t3code", ), ).toBe("t3code/apps/web/src/session-logic.ts:501"); }); it("prefixes relative paths with the workspace root label", () => { expect( formatWorkspaceRelativePath( "apps/web/src/session-logic.ts:501", "C:/Users/mike/dev-stuff/t3code", ), ).toBe("t3code/apps/web/src/session-logic.ts:501"); }); it("keeps paths already rooted at the workspace label stable", () => { expect( formatWorkspaceRelativePath( "t3code/apps/web/src/session-logic.ts:501", "C:/Users/mike/dev-stuff/t3code", ), ).toBe("t3code/apps/web/src/session-logic.ts:501"); }); it("preserves columns when present", () => { expect( formatWorkspaceRelativePath( "/C:/Users/mike/dev-stuff/t3code/apps/web/src/session-logic.ts:501:9", "C:/Users/mike/dev-stuff/t3code", ), ).toBe("t3code/apps/web/src/session-logic.ts:501:9"); }); it("keeps double-slash POSIX paths case-sensitive", () => { expect(formatWorkspaceRelativePath("//tmp/project/probe.txt", "//tmp/Project")).toBe( "//tmp/project/probe.txt", ); });});
import { describe, expect, it } from "vite-plus/test";
import { formatWorkspaceRelativePath } from "./filePathDisplay";
describe("formatWorkspaceRelativePath", () => {
it("formats absolute workspace paths from the workspace root", () => {
expect(
formatWorkspaceRelativePath(
"C:/Users/mike/dev-stuff/t3code/apps/web/src/session-logic.ts:501",
"C:/Users/mike/dev-stuff/t3code",
),
).toBe("t3code/apps/web/src/session-logic.ts:501");
});
it("prefixes relative paths with the workspace root label", () => {
expect(
formatWorkspaceRelativePath(
"apps/web/src/session-logic.ts:501",
"C:/Users/mike/dev-stuff/t3code",
),
).toBe("t3code/apps/web/src/session-logic.ts:501");
});
it("keeps paths already rooted at the workspace label stable", () => {
expect(
formatWorkspaceRelativePath(
"t3code/apps/web/src/session-logic.ts:501",
"C:/Users/mike/dev-stuff/t3code",
),
).toBe("t3code/apps/web/src/session-logic.ts:501");
});
it("preserves columns when present", () => {
expect(
formatWorkspaceRelativePath(
"/C:/Users/mike/dev-stuff/t3code/apps/web/src/session-logic.ts:501:9",
"C:/Users/mike/dev-stuff/t3code",
),
).toBe("t3code/apps/web/src/session-logic.ts:501:9");
});
it("keeps double-slash POSIX paths case-sensitive", () => {
expect(formatWorkspaceRelativePath("//tmp/project/probe.txt", "//tmp/Project")).toBe(
"//tmp/project/probe.txt",
);
});
});