Download superlog/apps/api/src/management-sourcemaps-auth.test.ts from smlflg/Experimente: direct link, hf CLI and curl.
- Browser
- Download file 1.63 kB
-
https://huggingface.co/smlflg/Experimente/resolve/main/superlog/apps/api/src/management-sourcemaps-auth.test.ts
- Command line
-
hf download hf://smlflg/Experimente/superlog/apps/api/src/management-sourcemaps-auth.test.ts
-
curl -L -o management-sourcemaps-auth.test.ts https://huggingface.co/smlflg/Experimente/resolve/main/superlog/apps/api/src/management-sourcemaps-auth.test.ts
1.63 kB
| import assert from "node:assert/strict"; | |
| import { randomUUID } from "node:crypto"; | |
| import { test } from "node:test"; | |
| import type { DB } from "@superlog/db"; | |
| import { resolvePublicSourceMapUploadAuth } from "./management-auth.js"; | |
| function databaseReturning(row: { id: string; projectId: string } | null): DB { | |
| return { | |
| query: { | |
| apiKeys: { | |
| async findFirst() { | |
| return row; | |
| }, | |
| }, | |
| }, | |
| } as unknown as DB; | |
| } | |
| test("public ingest keys can authorize source map uploads for their own project", async () => { | |
| const projectId = randomUUID(); | |
| const auth = await resolvePublicSourceMapUploadAuth({ | |
| database: databaseReturning({ id: "key-1", projectId }), | |
| method: "POST", | |
| path: `/api/v1/projects/${projectId}/sourcemaps`, | |
| token: "sl_public_test-token", | |
| }); | |
| assert.deepEqual(auth, { projectId, apiKeyId: "key-1" }); | |
| }); | |
| test("public ingest keys cannot upload source maps for another project", async () => { | |
| const auth = await resolvePublicSourceMapUploadAuth({ | |
| database: databaseReturning({ id: "key-1", projectId: randomUUID() }), | |
| method: "POST", | |
| path: `/api/v1/projects/${randomUUID()}/sourcemaps`, | |
| token: "sl_public_test-token", | |
| }); | |
| assert.equal(auth, null); | |
| }); | |
| test("public ingest keys do not authorize other management API routes", async () => { | |
| const projectId = randomUUID(); | |
| const auth = await resolvePublicSourceMapUploadAuth({ | |
| database: databaseReturning({ id: "key-1", projectId }), | |
| method: "GET", | |
| path: `/api/v1/projects/${projectId}/api-keys`, | |
| token: "sl_public_test-token", | |
| }); | |
| assert.equal(auth, null); | |
| }); | |