Update paths in sync.sh, master/main.go, and CLAUDE.md to reflect the directory rename. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
74 lines
2.3 KiB
TypeScript
74 lines
2.3 KiB
TypeScript
// Tests for basic/routes.ts
|
|
// These tests verify the route structure and exports
|
|
|
|
import assert from "node:assert/strict";
|
|
import { describe, it } from "node:test";
|
|
import { routes } from "./routes";
|
|
|
|
describe("basic/routes", () => {
|
|
describe("routes object", () => {
|
|
it("exports routes as an object", () => {
|
|
assert.equal(typeof routes, "object");
|
|
});
|
|
|
|
it("contains hello route", () => {
|
|
assert.ok("hello" in routes);
|
|
assert.equal(routes.hello.path, "/hello");
|
|
assert.ok(routes.hello.methods.includes("GET"));
|
|
});
|
|
|
|
it("contains home route", () => {
|
|
assert.ok("home" in routes);
|
|
assert.equal(routes.home.path, "/");
|
|
assert.ok(routes.home.methods.includes("GET"));
|
|
});
|
|
|
|
it("contains login route", () => {
|
|
assert.ok("login" in routes);
|
|
assert.equal(routes.login.path, "/login");
|
|
});
|
|
|
|
it("contains logout route", () => {
|
|
assert.ok("logout" in routes);
|
|
assert.equal(routes.logout.path, "/logout");
|
|
});
|
|
|
|
it("all routes have handlers", () => {
|
|
for (const [name, route] of Object.entries(routes)) {
|
|
assert.equal(
|
|
typeof route.handler,
|
|
"function",
|
|
`Route ${name} should have a handler function`,
|
|
);
|
|
}
|
|
});
|
|
|
|
it("all routes have methods array", () => {
|
|
for (const [name, route] of Object.entries(routes)) {
|
|
assert.ok(
|
|
Array.isArray(route.methods),
|
|
`Route ${name} should have methods array`,
|
|
);
|
|
assert.ok(
|
|
route.methods.length > 0,
|
|
`Route ${name} should have at least one method`,
|
|
);
|
|
}
|
|
});
|
|
|
|
it("all routes have path string", () => {
|
|
for (const [name, route] of Object.entries(routes)) {
|
|
assert.equal(
|
|
typeof route.path,
|
|
"string",
|
|
`Route ${name} should have a path string`,
|
|
);
|
|
assert.ok(
|
|
route.path.startsWith("/"),
|
|
`Route ${name} path should start with /`,
|
|
);
|
|
}
|
|
});
|
|
});
|
|
});
|