mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-05 04:40:23 +00:00
refactor: unify shared utility normalization helpers
This commit is contained in:
14
src/sessions/session-id.test.ts
Normal file
14
src/sessions/session-id.test.ts
Normal file
@@ -0,0 +1,14 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { SESSION_ID_RE, looksLikeSessionId } from "./session-id.js";
|
||||
|
||||
describe("session-id", () => {
|
||||
it("matches canonical UUID session ids", () => {
|
||||
expect(SESSION_ID_RE.test("123e4567-e89b-12d3-a456-426614174000")).toBe(true);
|
||||
expect(looksLikeSessionId(" 123e4567-e89b-12d3-a456-426614174000 ")).toBe(true);
|
||||
});
|
||||
|
||||
it("rejects non-session-id values", () => {
|
||||
expect(SESSION_ID_RE.test("agent:main:main")).toBe(false);
|
||||
expect(looksLikeSessionId("session-label")).toBe(false);
|
||||
});
|
||||
});
|
||||
5
src/sessions/session-id.ts
Normal file
5
src/sessions/session-id.ts
Normal file
@@ -0,0 +1,5 @@
|
||||
export const SESSION_ID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
||||
|
||||
export function looksLikeSessionId(value: string): boolean {
|
||||
return SESSION_ID_RE.test(value.trim());
|
||||
}
|
||||
Reference in New Issue
Block a user