9 lines
982 B
TypeScript
9 lines
982 B
TypeScript
import assert from "node:assert/strict"
|
|
import {test} from "node:test"
|
|
import {dashboardRequestPermission} from "./dashboard-permissions"
|
|
import {permissionForRequest} from "../backend/src/lib/permissions"
|
|
test("dashboard reader gates match real backend permissions including fallback diagnostic POST",()=>{
|
|
for(const [method,path] of [["GET","/api/uptime/overview?range=1h"],["GET","/api/servers"],["GET","/api/filters/rules"],["GET","/api/bgp/catalog"],["GET","/api/internet-path/latest"],["GET","/api/filters/gre-tunnels"],["GET","/api/wireguard"],["GET","/api/traffic/servers?range=1h"],["GET","/api/vxlan"],["GET","/api/events?limit=6"],["GET","/api/servers/1/wan-runtime"],["POST","/api/servers/1/probes/run"],["GET","/api/uptime/speed-probes"]])assert.equal(dashboardRequestPermission(method,path),permissionForRequest(method,path))
|
|
assert.throws(()=>dashboardRequestPermission("GET","/api/unmapped"));assert.throws(()=>dashboardRequestPermission("POST","/api/events"))
|
|
})
|