@sculptor/cli 0.1.8 → 0.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.js CHANGED
@@ -6,13 +6,13 @@ import { createInterface } from "node:readline/promises";
6
6
  import { stdin, stdout } from "node:process";
7
7
  import { fileURLToPath } from "node:url";
8
8
  import { loadConfig } from "@sculptor/config";
9
- import { controllerHelp, generateHelp, generateResourceFiles, middlewareHelp, moduleHelp, parseGenerateMode, readModeFromFlags, routeHelp, scaffoldProject, typeHelp, writeGeneratedFiles } from "./scaffold.js";
9
+ import { controllerHelp, generateHelp, generateResourceFiles, middlewareHelp, moduleHelp, parseGenerateMode, readModeFromFlags, routeHelp, scaffoldProject, syncTestHarness, typeHelp, writeGeneratedFiles } from "./scaffold.js";
10
10
  const cliPackageVersion = JSON.parse(fs.readFileSync(new URL("../package.json", import.meta.url), "utf8"));
11
11
  const versionLabel = cliPackageVersion.version ?? "0.0.0";
12
12
  const isCommand = (value) => ["new", "start", "dev", "build", "lint", "test", "generate", "g", "help"].includes(value);
13
13
  const isFlag = (value) => value.startsWith("-");
14
14
  const isVersionFlag = (value) => ["-v", "--v", "--version", "version", "v"].includes(value);
15
- const sculptorBanner = String.raw `+-------------------------------------------------------------------------+
15
+ const sculptorCliBanner = String.raw `+-------------------------------------------------------------------------+
16
16
  | |
17
17
  | ███████╗ ██████╗██╗ ██╗██╗ ██████╗ ████████╗ ██████╗ ██████╗ |
18
18
  | ██╔════╝██╔════╝██║ ██║██║ ██╔══██╗╚══██╔══╝██╔═══██╗██╔══██╗ |
@@ -22,12 +22,22 @@ const sculptorBanner = String.raw `+--------------------------------------------
22
22
  | ╚══════╝ ╚═════╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ |
23
23
  | |
24
24
  | SculptorTS CLI |
25
- | v0.1.8 |
25
+ | v0.1.9 |
26
26
  | |
27
27
  +-------------------------------------------------------------------------+`;
28
+ const sculptorDevBanner = (version) => String.raw `
29
+
30
+ ███████╗ ██████╗██╗ ██╗██╗ ██████╗ ████████╗ ██████╗ ██████╗
31
+ ██╔════╝██╔════╝██║ ██║██║ ██╔══██╗╚══██╔══╝██╔═══██╗██╔══██╗
32
+ ███████╗██║ ██║ ██║██║ ██████╔╝ ██║ ██║ ██║██████╔╝
33
+ ╚════██║██║ ██║ ██║██║ ██╔═══╝ ██║ ██║ ██║██╔══██╗
34
+ ███████║╚██████╗╚██████╔╝███████╗██║ ██║ ╚██████╔╝██║ ██║
35
+ ╚══════╝ ╚═════╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝
36
+
37
+ SculptorTS CLI v${version}`;
28
38
  const buildBanner = (title, subtitle) => {
29
- if (title === "SculptorTS CLI" && subtitle === "v0.1.8") {
30
- return sculptorBanner;
39
+ if (title === "SculptorTS CLI" && subtitle === `v${versionLabel}`) {
40
+ return sculptorCliBanner;
31
41
  }
32
42
  const width = 56;
33
43
  const line = `+${"-".repeat(width - 2)}+`;
@@ -55,6 +65,16 @@ const buildBanner = (title, subtitle) => {
55
65
  const printBanner = (log, title, subtitle) => {
56
66
  log(buildBanner(title, subtitle));
57
67
  };
68
+ const printDevBanner = (log) => {
69
+ log(sculptorDevBanner(versionLabel));
70
+ };
71
+ const requireAppRoot = (cwd, command) => {
72
+ const sculptorConfig = path.join(cwd, "sculptor.json");
73
+ if (!fs.existsSync(sculptorConfig)) {
74
+ throw new Error(`${command} can only be run from a Sculptor app root.`);
75
+ }
76
+ return cwd;
77
+ };
58
78
  const extractOutputDir = (args) => {
59
79
  const index = args.findIndex((arg) => arg === "in");
60
80
  if (index < 0 || index === args.length - 1) {
@@ -93,22 +113,19 @@ const getPrompt = (prompt) => {
93
113
  }
94
114
  };
95
115
  };
96
- const resolveAppRoot = (cwd) => {
97
- const candidate = path.join(cwd, "app");
98
- return fs.existsSync(path.join(candidate, "sculptor.json")) ? candidate : cwd;
99
- };
100
116
  const resolveDefaultMode = (cwd) => {
101
- const config = loadConfig(resolveAppRoot(cwd));
117
+ const config = loadConfig(cwd);
102
118
  const style = config.framework.routing?.style;
103
119
  return style === "decorator" || style === "functional" || style === "hybrid"
104
120
  ? style
105
121
  : "decorator";
106
122
  };
107
123
  const resolveDefaultDevServer = (cwd) => {
108
- const config = loadConfig(resolveAppRoot(cwd));
124
+ const config = loadConfig(cwd);
109
125
  const devServer = config.framework.project?.devServer;
110
126
  return devServer === "nodemon" ? "nodemon" : "tsx";
111
127
  };
128
+ const resolveTestingGenerate = (cwd) => loadConfig(cwd).framework.testing?.generate !== false;
112
129
  const resolveFrameworkLock = (mode, provided) => {
113
130
  if (provided !== undefined) {
114
131
  return provided;
@@ -257,7 +274,11 @@ const resolveProjectMetadata = async (args, cwd, prompt) => {
257
274
  version,
258
275
  mode,
259
276
  frameworkLock,
260
- devServer
277
+ devServer,
278
+ testing: {
279
+ generate: true,
280
+ framework: "vitest"
281
+ }
261
282
  };
262
283
  };
263
284
  const runSpawn = (command, args, cwd, spawn, log, env) => {
@@ -286,13 +307,13 @@ const handleNew = async (args, cwd, prompt, spawn, log) => {
286
307
  log(`Created SculptorTS project at ${targetDir}`);
287
308
  };
288
309
  const handleDev = (args, cwd, spawn, log) => {
289
- const appRoot = resolveAppRoot(cwd);
310
+ const appRoot = requireAppRoot(cwd, "sc dev");
290
311
  const devServer = resolveDefaultDevServer(cwd);
291
312
  const port = getFlagValue(args, ["--port"]);
292
313
  if (port) {
293
314
  process.env.PORT = port;
294
315
  }
295
- printBanner(log, "SculptorTS", `Starting in ${devServer} mode`);
316
+ printDevBanner(log);
296
317
  if (devServer === "nodemon") {
297
318
  runSpawn("npx", [
298
319
  "nodemon",
@@ -308,7 +329,7 @@ const handleDev = (args, cwd, spawn, log) => {
308
329
  runSpawn("npx", ["tsx", path.join(appRoot, "src/main.ts")], appRoot, spawn, log, { SCULPTOR_SUPPRESS_BANNER: "1" });
309
330
  };
310
331
  const handleStart = (args, cwd, spawn, log) => {
311
- const appRoot = resolveAppRoot(cwd);
332
+ const appRoot = requireAppRoot(cwd, "sc start");
312
333
  const port = getFlagValue(args, ["--port"]);
313
334
  const watch = getFlagPresence(args, ["--watch"]);
314
335
  const distEntry = path.join(appRoot, "dist", "main.js");
@@ -317,28 +338,32 @@ const handleStart = (args, cwd, spawn, log) => {
317
338
  process.env.PORT = port;
318
339
  }
319
340
  if (!watch && fs.existsSync(distEntry)) {
320
- printBanner(log, "SculptorTS", "Starting application");
321
- runSpawn("node", [distEntry], cwd, spawn, log, { SCULPTOR_SUPPRESS_BANNER: "1" });
341
+ runSpawn("node", [distEntry], appRoot, spawn, log, { SCULPTOR_SUPPRESS_BANNER: "1" });
322
342
  return;
323
343
  }
324
344
  if (watch) {
325
345
  handleDev(args, cwd, spawn, log);
326
346
  return;
327
347
  }
328
- printBanner(log, "SculptorTS", "Starting application");
329
- runSpawn("npx", ["tsx", srcEntry], cwd, spawn, log, { SCULPTOR_SUPPRESS_BANNER: "1" });
348
+ runSpawn("npx", ["tsx", srcEntry], appRoot, spawn, log, { SCULPTOR_SUPPRESS_BANNER: "1" });
330
349
  };
331
350
  const handleBuild = (cwd, spawn, log) => {
332
- const appTsconfig = path.join(resolveAppRoot(cwd), "tsconfig.json");
333
- runSpawn("npx", ["tsc", "-p", appTsconfig], cwd, spawn, log);
351
+ const appRoot = requireAppRoot(cwd, "sc build");
352
+ const appTsconfig = path.join(appRoot, "tsconfig.json");
353
+ runSpawn("npx", ["tsc", "-p", appTsconfig], appRoot, spawn, log);
334
354
  };
335
355
  const handleLint = (cwd, spawn, log) => {
336
- const appRoot = resolveAppRoot(cwd);
337
- const targets = appRoot === cwd ? ["."] : ["app", "packages"];
338
- runSpawn("npx", ["eslint", ...targets, "--ext", ".ts"], cwd, spawn, log);
356
+ const appRoot = requireAppRoot(cwd, "sc lint");
357
+ runSpawn("npx", ["eslint", ".", "--ext", ".ts"], appRoot, spawn, log);
339
358
  };
340
359
  const handleTest = (cwd, spawn, log) => {
341
- runSpawn("npx", ["vitest", "run"], cwd, spawn, log);
360
+ const appRoot = requireAppRoot(cwd, "sc test");
361
+ const runner = path.join(appRoot, "src", "tests", "runner.ts");
362
+ if (fs.existsSync(runner)) {
363
+ runSpawn("npx", ["vitest", "run", runner], appRoot, spawn, log);
364
+ return;
365
+ }
366
+ runSpawn("npx", ["vitest", "run"], appRoot, spawn, log);
342
367
  };
343
368
  const handleGenerate = (args, cwd, prompt, log, error) => {
344
369
  const [kindInput, ...restInput] = args;
@@ -390,6 +415,7 @@ const handleGenerate = (args, cwd, prompt, log, error) => {
390
415
  error("Routers can only be scaffolded in functional or hybrid mode.");
391
416
  process.exit(1);
392
417
  }
418
+ const appRoot = requireAppRoot(cwd, "sc generate");
393
419
  const resolvedName = explicitName ??
394
420
  (() => {
395
421
  if (!outputDir) {
@@ -398,9 +424,12 @@ const handleGenerate = (args, cwd, prompt, log, error) => {
398
424
  const parts = outputDir.split(/[\\/]/).filter(Boolean);
399
425
  return parts[parts.length - 1] ?? "index";
400
426
  })();
401
- const files = generateResourceFiles(kind, resolvedName, mode, devServer, outputDir, typeVariant);
402
- const targetDir = resolveAppRoot(cwd);
427
+ const files = generateResourceFiles(kind, resolvedName, mode, devServer, outputDir, typeVariant, resolveTestingGenerate(appRoot));
428
+ const targetDir = appRoot;
403
429
  writeGeneratedFiles(targetDir, files);
430
+ if (resolveTestingGenerate(appRoot)) {
431
+ syncTestHarness(targetDir);
432
+ }
404
433
  log(`Generated ${kind} "${resolvedName}" using ${mode} mode.`);
405
434
  return Promise.resolve();
406
435
  };
@@ -456,7 +485,11 @@ export const runCli = async (argv = process.argv, options = {}) => {
456
485
  }
457
486
  };
458
487
  if (fileURLToPath(import.meta.url) === process.argv[1]) {
459
- void runCli();
488
+ void runCli().catch((error) => {
489
+ const message = error instanceof Error ? error.message : String(error);
490
+ console.error(message);
491
+ process.exit(1);
492
+ });
460
493
  }
461
494
  export { resolveProjectMetadata };
462
495
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -2,15 +2,22 @@ export type ScaffoldMode = "decorator" | "functional" | "hybrid";
2
2
  export type DevServer = "tsx" | "nodemon";
3
3
  export type GenerateKind = "controller" | "service" | "module" | "middleware" | "type" | "route";
4
4
  export type TypeVariant = "type" | "interface" | "class" | "enum";
5
+ export type TestingFramework = "vitest";
6
+ export interface TestingMetadata {
7
+ generate: boolean;
8
+ framework: TestingFramework;
9
+ }
5
10
  export interface ScaffoldProjectMetadata {
6
11
  appName: string;
7
12
  version: string;
8
13
  mode: ScaffoldMode;
9
14
  frameworkLock: boolean;
10
15
  devServer: DevServer;
16
+ testing: TestingMetadata;
11
17
  }
18
+ export declare const syncTestHarness: (targetDir: string) => void;
12
19
  export declare const scaffoldProject: (metadata: ScaffoldProjectMetadata, targetDir: string) => void;
13
- export declare const generateResourceFiles: (kind: GenerateKind, name: string, mode: ScaffoldMode, devServer?: DevServer, outputDir?: string, typeVariant?: TypeVariant) => Record<string, string>;
20
+ export declare const generateResourceFiles: (kind: GenerateKind, name: string, mode: ScaffoldMode, devServer?: DevServer, outputDir?: string, typeVariant?: TypeVariant, testingGenerate?: boolean) => Record<string, string>;
14
21
  export declare const writeGeneratedFiles: (targetDir: string, files: Record<string, string>) => void;
15
22
  export declare const readModeFromFlags: (flags: string[], fallback: ScaffoldMode) => ScaffoldMode;
16
23
  export declare const parseGenerateMode: (mode: string | undefined, fallback: ScaffoldMode) => ScaffoldMode;
package/dist/scaffold.js CHANGED
@@ -1,3 +1,4 @@
1
+ import fs from "node:fs";
1
2
  import path from "node:path";
2
3
  import { ensureDir, writeTextFile } from "./fs.js";
3
4
  const toPascalCase = (value) => value
@@ -33,6 +34,8 @@ const typeFileName = (name, variant) => {
33
34
  const suffix = variant === "type" ? "type" : variant;
34
35
  return `${name}.${suffix}.ts`;
35
36
  };
37
+ const specFileName = (name, suffix) => `${name}.${suffix}.spec.ts`;
38
+ const specImportPath = (sourcePath) => normalizeRelativePath(path.posix.relative("src/tests", sourcePath)).replace(/\.ts$/, ".js");
36
39
  const resolveGeneratorOutputDir = (kind, outputDir) => {
37
40
  if (outputDir) {
38
41
  return normalizeRelativePath(outputDir);
@@ -68,7 +71,7 @@ const rootPackageJsonTemplate = (appName, version, devServer) => `{
68
71
  "dev": "${devScriptFor(devServer)}",
69
72
  "build": "tsc -p tsconfig.json",
70
73
  "lint": "eslint . --ext .ts",
71
- "test": "vitest run"
74
+ "test": "sc test"
72
75
  },
73
76
  "dependencies": {
74
77
  "express": "^4.21.2",
@@ -88,35 +91,6 @@ ${devDependenciesFor(devServer)}
88
91
  "vitest": "^2.1.8"
89
92
  }
90
93
  }`;
91
- const appPackageJsonTemplate = (appName, version, devServer) => `{
92
- "name": "${toKebabCase(appName)}",
93
- "version": "${version}",
94
- "private": true,
95
- "type": "module",
96
- "scripts": {
97
- "start": "tsx src/main.ts",
98
- "dev": "${devScriptFor(devServer)}",
99
- "build": "tsc -p tsconfig.json",
100
- "lint": "eslint . --ext .ts",
101
- "test": "vitest run"
102
- },
103
- "dependencies": {
104
- "express": "^4.21.2",
105
- "reflect-metadata": "^0.2.2"
106
- },
107
- "devDependencies": {
108
- "@types/express": "^4.17.23",
109
- "@types/node": "^22.15.3",
110
- "@types/supertest": "^6.0.3",
111
- "@typescript-eslint/eslint-plugin": "^8.30.1",
112
- "@typescript-eslint/parser": "^8.30.1",
113
- "eslint": "^9.20.0",
114
- ${devDependenciesFor(devServer)}
115
- "typescript": "^5.8.3",
116
- "vitest": "^2.1.8",
117
- "supertest": "^7.1.0"
118
- }
119
- }`;
120
94
  const rootTsconfigTemplate = `{
121
95
  "compilerOptions": {
122
96
  "target": "ES2020",
@@ -139,7 +113,7 @@ const rootTsconfigTemplate = `{
139
113
  "include": ["src/**/*.ts"],
140
114
  "exclude": ["dist", "node_modules"]
141
115
  }`;
142
- const sculptorTemplate = (mode, devServer, frameworkLock) => `{
116
+ const sculptorTemplate = (mode, devServer, frameworkLock, testing) => `{
143
117
  "project": {
144
118
  "srcRoot": "src",
145
119
  "entryFile": "main.ts",
@@ -148,6 +122,10 @@ const sculptorTemplate = (mode, devServer, frameworkLock) => `{
148
122
  "routing": {
149
123
  "style": "${mode}"
150
124
  },
125
+ "testing": {
126
+ "generate": ${testing.generate ? "true" : "false"},
127
+ "framework": "${testing.framework}"
128
+ },
151
129
  "frameworkLock": ${frameworkLock ? "true" : "false"}
152
130
  }`;
153
131
  const eslintConfigTemplate = `import parser from "@typescript-eslint/parser";
@@ -189,6 +167,46 @@ export default defineConfig({
189
167
  }
190
168
  });
191
169
  `;
170
+ const mainSpecTemplate = `import type { Server } from "node:http";
171
+ import { fileURLToPath } from "node:url";
172
+
173
+ import { afterEach, describe, expect, it, vi } from "vitest";
174
+
175
+ import { startApp } from "@sculptor/core";
176
+ import { registry } from "../registry.js";
177
+
178
+ describe("app bootstrap", () => {
179
+ let server: Server | undefined;
180
+
181
+ afterEach(async () => {
182
+ vi.restoreAllMocks();
183
+
184
+ if (!server) {
185
+ return;
186
+ }
187
+
188
+ await new Promise<void>((resolve) => {
189
+ server?.close(() => resolve());
190
+ });
191
+ server = undefined;
192
+ });
193
+
194
+ it("starts the application", async () => {
195
+ const logs: string[] = [];
196
+ vi.spyOn(console, "log").mockImplementation((...args: unknown[]) => {
197
+ logs.push(args.map(String).join(" "));
198
+ });
199
+
200
+ server = await startApp({
201
+ registry,
202
+ rootDir: fileURLToPath(new URL("../..", import.meta.url)),
203
+ port: 0
204
+ });
205
+
206
+ expect(logs.join("\\n")).toContain("Local: http://localhost:");
207
+ });
208
+ });
209
+ `;
192
210
  const appTsconfigTemplate = `{
193
211
  "compilerOptions": {
194
212
  "target": "ES2020",
@@ -291,10 +309,141 @@ const healthServiceTemplate = `export class HealthService {
291
309
  `;
292
310
  const healthModuleTemplate = `export class HealthModule {}
293
311
  `;
294
- const healthHandlerTemplate = `export const healthHandler = (_req: unknown, res: { json: (value: unknown) => void }) => {
295
- res.json({ status: "ok" });
312
+ const healthControllerSpecTemplate = `import { describe, expect, it } from "vitest";
313
+
314
+ import { HealthController } from "../app/controllers/health.controller.js";
315
+
316
+ describe("HealthController", () => {
317
+ it("returns the expected health payload", () => {
318
+ const controller = new HealthController();
319
+
320
+ expect(controller.health()).toEqual({ status: "ok" });
321
+ expect(controller.ping()).toEqual({ message: "pong" });
322
+ });
323
+ });
324
+ `;
325
+ const healthRoutesSpecTemplate = `import express from "express";
326
+ import request from "supertest";
327
+ import { describe, expect, it } from "vitest";
328
+
329
+ import { healthRoutes } from "../app/routes/health.routes.js";
330
+
331
+ describe("healthRoutes", () => {
332
+ it("serves the health endpoint", async () => {
333
+ const app = express();
334
+ app.use(healthRoutes);
335
+
336
+ await request(app).get("/health").expect(200).expect({ status: "ok" });
337
+ await request(app).get("/ping").expect(200).expect({ message: "pong" });
338
+ });
339
+ });
340
+ `;
341
+ const testRegistryTemplate = (specs) => `export const testRegistry = [
342
+ ${specs.map((spec) => ` "${spec}"`).join(",\n")}
343
+ ] as const;
344
+ `;
345
+ const testRunnerTemplate = () => `import { testRegistry } from "./registry.js";
346
+
347
+ for (const spec of testRegistry) {
348
+ await import(spec);
349
+ }
350
+ `;
351
+ const collectSpecPaths = (dir, rootDir = dir) => {
352
+ if (!fs.existsSync(dir)) {
353
+ return [];
354
+ }
355
+ const entries = fs.readdirSync(dir, { withFileTypes: true });
356
+ const specs = [];
357
+ for (const entry of entries) {
358
+ const fullPath = path.join(dir, entry.name);
359
+ if (entry.isDirectory()) {
360
+ specs.push(...collectSpecPaths(fullPath, rootDir));
361
+ continue;
362
+ }
363
+ if (!entry.isFile()) {
364
+ continue;
365
+ }
366
+ if (!entry.name.endsWith(".spec.ts")) {
367
+ continue;
368
+ }
369
+ const relativePath = normalizeRelativePath(path.relative(rootDir, fullPath));
370
+ if (relativePath === "registry.ts" || relativePath === "runner.ts") {
371
+ continue;
372
+ }
373
+ specs.push(`./${relativePath.replace(/\.ts$/, ".js")}`);
374
+ }
375
+ return specs.sort();
376
+ };
377
+ export const syncTestHarness = (targetDir) => {
378
+ const testsDir = path.join(targetDir, "src", "tests");
379
+ ensureDir(testsDir);
380
+ const specs = collectSpecPaths(testsDir);
381
+ writeTextFile(path.join(testsDir, "registry.ts"), testRegistryTemplate(specs));
382
+ writeTextFile(path.join(testsDir, "runner.ts"), testRunnerTemplate());
383
+ };
384
+ const controllerSpecTemplate = (name, sourcePath) => {
385
+ const importPath = specImportPath(sourcePath);
386
+ return `import { describe, expect, it } from "vitest";
387
+
388
+ import { ${toPascalCase(name)}Controller } from "${importPath}";
389
+
390
+ describe("${toPascalCase(name)}Controller", () => {
391
+ it("returns the expected payload", () => {
392
+ const controller = new ${toPascalCase(name)}Controller();
393
+
394
+ expect(controller.findAll()).toEqual({ resource: "${name}" });
395
+ });
396
+ });
397
+ `;
398
+ };
399
+ const serviceSpecTemplate = (name, sourcePath) => {
400
+ const importPath = specImportPath(sourcePath);
401
+ return `import { describe, expect, it } from "vitest";
402
+
403
+ import { ${toPascalCase(name)}Service } from "${importPath}";
404
+
405
+ describe("${toPascalCase(name)}Service", () => {
406
+ it("can be instantiated", () => {
407
+ expect(new ${toPascalCase(name)}Service()).toBeInstanceOf(${toPascalCase(name)}Service);
408
+ });
409
+ });
410
+ `;
411
+ };
412
+ const routeSpecTemplate = (name, sourcePath) => {
413
+ const importPath = specImportPath(sourcePath);
414
+ return `import express from "express";
415
+ import request from "supertest";
416
+ import { describe, expect, it } from "vitest";
417
+
418
+ import { ${toCamelCase(name)}Routes } from "${importPath}";
419
+
420
+ describe("${toCamelCase(name)}Routes", () => {
421
+ it("serves the resource endpoint", async () => {
422
+ const app = express();
423
+ app.use(${toCamelCase(name)}Routes);
424
+
425
+ await request(app).get("/${name}").expect(200).expect({ resource: "${name}" });
426
+ });
427
+ });
428
+ `;
296
429
  };
430
+ const middlewareSpecTemplate = (name, sourcePath) => {
431
+ const importPath = specImportPath(sourcePath);
432
+ return `import { describe, expect, it, vi } from "vitest";
433
+
434
+ import { ${toCamelCase(name)}Middleware } from "${importPath}";
435
+
436
+ describe("${toCamelCase(name)}Middleware", () => {
437
+ it("calls next", () => {
438
+ const next = vi.fn();
439
+
440
+ ${toCamelCase(name)}Middleware({} as never, {} as never, next);
441
+
442
+ expect(next).toHaveBeenCalledTimes(1);
443
+ });
444
+ });
297
445
  `;
446
+ };
298
447
  const createDecoratorController = (name, outputDir = "src/app/controllers") => ({
299
448
  [`${normalizeRelativePath(outputDir)}/${controllerFileName(name)}`]: `import { Controller, Get } from "@sculptor/core";
300
449
 
@@ -379,21 +528,11 @@ const createTypeResource = (name, variant, outputDir) => {
379
528
  const appShellFiles = (metadata) => ({
380
529
  "package.json": rootPackageJsonTemplate(metadata.appName, metadata.version, metadata.devServer),
381
530
  "tsconfig.json": rootTsconfigTemplate,
382
- "sculptor.json": sculptorTemplate(metadata.mode, metadata.devServer, metadata.frameworkLock),
531
+ "sculptor.json": sculptorTemplate(metadata.mode, metadata.devServer, metadata.frameworkLock, metadata.testing),
383
532
  "props.json": propsTemplate,
384
533
  "src/main.ts": mainTemplate,
385
534
  "src/registry.ts": registryTemplate(metadata.mode)
386
535
  });
387
- const resourceShellFiles = (name, mode, devServer) => ({
388
- "package.json": rootPackageJsonTemplate(name, "0.1.0", devServer),
389
- "tsconfig.json": rootTsconfigTemplate,
390
- "sculptor.json": sculptorTemplate(mode, devServer, mode !== "hybrid"),
391
- "props.json": propsTemplate,
392
- "src/main.ts": mainTemplate,
393
- "src/registry.ts": registryTemplate(mode),
394
- "eslint.config.js": eslintConfigTemplate,
395
- "vitest.config.ts": vitestConfigTemplate
396
- });
397
536
  export const scaffoldProject = (metadata, targetDir) => {
398
537
  ensureDir(targetDir);
399
538
  const rootFiles = {
@@ -409,7 +548,15 @@ export const scaffoldProject = (metadata, targetDir) => {
409
548
  }
410
549
  if (metadata.mode === "functional" || metadata.mode === "hybrid") {
411
550
  rootFiles["src/app/routes/health.routes.ts"] = healthRoutesTemplate;
412
- rootFiles["src/app/handlers/health.handler.ts"] = healthHandlerTemplate;
551
+ }
552
+ if (metadata.testing.generate) {
553
+ rootFiles["src/tests/main.spec.ts"] = mainSpecTemplate;
554
+ if (metadata.mode === "decorator" || metadata.mode === "hybrid") {
555
+ rootFiles["src/tests/health.controller.spec.ts"] = healthControllerSpecTemplate;
556
+ }
557
+ if (metadata.mode === "functional" || metadata.mode === "hybrid") {
558
+ rootFiles["src/tests/health.routes.spec.ts"] = healthRoutesSpecTemplate;
559
+ }
413
560
  }
414
561
  for (const [relativePath, content] of Object.entries(rootFiles)) {
415
562
  writeTextFile(path.join(targetDir, relativePath), content);
@@ -420,53 +567,101 @@ export const scaffoldProject = (metadata, targetDir) => {
420
567
  "src/app/services",
421
568
  "src/app/modules",
422
569
  "src/app/middlewares",
423
- "src/app/handlers"
570
+ "src/app/handlers",
571
+ "src/tests"
424
572
  ]) {
425
573
  ensureDir(path.join(targetDir, dir));
426
574
  }
575
+ if (metadata.testing.generate) {
576
+ syncTestHarness(targetDir);
577
+ }
427
578
  };
428
- export const generateResourceFiles = (kind, name, mode, devServer = "tsx", outputDir, typeVariant = "type") => {
579
+ export const generateResourceFiles = (kind, name, mode, devServer = "tsx", outputDir, typeVariant = "type", testingGenerate = false) => {
429
580
  const resolvedOutputDir = resolveGeneratorOutputDir(kind, outputDir);
430
581
  const resolvedName = resolveFileStem(name, resolvedOutputDir);
431
582
  const functionalRouteDir = normalizeRelativePath(outputDir ?? "src/app/routes");
432
583
  const functionalHandlerDir = normalizeRelativePath(outputDir ?? "src/app/handlers");
584
+ const sourceFiles = {};
433
585
  switch (kind) {
434
586
  case "controller":
435
587
  if (mode === "functional") {
436
- return {
588
+ Object.assign(sourceFiles, {
437
589
  [`${functionalRouteDir}/${routeFileName(resolvedName)}`]: createRouteResource(resolvedName)[`src/app/routes/${routeFileName(resolvedName)}`],
438
590
  [`${functionalHandlerDir}/${resolvedName}.handler.ts`]: createHandlerResource(resolvedName)[`src/app/handlers/${resolvedName}.handler.ts`]
439
- };
591
+ });
592
+ break;
440
593
  }
441
594
  if (mode === "hybrid") {
442
- return {
595
+ Object.assign(sourceFiles, {
443
596
  ...createDecoratorController(resolvedName, resolvedOutputDir),
444
597
  [`${functionalRouteDir}/${routeFileName(resolvedName)}`]: createRouteResource(resolvedName)[`src/app/routes/${routeFileName(resolvedName)}`],
445
598
  [`${functionalHandlerDir}/${resolvedName}.handler.ts`]: createHandlerResource(resolvedName)[`src/app/handlers/${resolvedName}.handler.ts`]
446
- };
599
+ });
600
+ break;
447
601
  }
448
- return createDecoratorController(resolvedName, resolvedOutputDir);
602
+ Object.assign(sourceFiles, createDecoratorController(resolvedName, resolvedOutputDir));
603
+ break;
449
604
  case "service":
450
- return {
605
+ Object.assign(sourceFiles, {
451
606
  [`${resolvedOutputDir}/${serviceFileName(resolvedName)}`]: createServiceResource(resolvedName)[`src/app/services/${serviceFileName(resolvedName)}`]
452
- };
607
+ });
608
+ break;
453
609
  case "module":
454
- return {
610
+ Object.assign(sourceFiles, {
455
611
  [`${resolvedOutputDir}/${moduleFileName(resolvedName)}`]: createModuleResource(resolvedName)[`src/app/modules/${moduleFileName(resolvedName)}`]
456
- };
612
+ });
613
+ break;
457
614
  case "middleware":
458
- return {
615
+ Object.assign(sourceFiles, {
459
616
  [`${resolvedOutputDir}/${middlewareFileName(resolvedName)}`]: createMiddlewareResource(resolvedName)[`src/app/middlewares/${middlewareFileName(resolvedName)}`]
460
- };
617
+ });
618
+ break;
461
619
  case "type":
462
- return createTypeResource(resolvedName, typeVariant, resolvedOutputDir);
620
+ Object.assign(sourceFiles, createTypeResource(resolvedName, typeVariant, resolvedOutputDir));
621
+ break;
463
622
  case "route":
464
- return mode === "functional" || mode === "hybrid"
465
- ? {
623
+ if (mode === "functional" || mode === "hybrid") {
624
+ Object.assign(sourceFiles, {
466
625
  [`${resolvedOutputDir}/${routeFileName(resolvedName)}`]: createRouteResource(resolvedName)[`src/app/routes/${routeFileName(resolvedName)}`]
467
- }
468
- : {};
626
+ });
627
+ }
628
+ break;
629
+ }
630
+ if (!testingGenerate) {
631
+ return sourceFiles;
632
+ }
633
+ const testFiles = {};
634
+ for (const [filePath] of Object.entries(sourceFiles)) {
635
+ const normalizedPath = normalizeRelativePath(filePath);
636
+ const baseName = path.posix.basename(normalizedPath, ".ts");
637
+ if (normalizedPath.endsWith(".controller.ts")) {
638
+ const resourceName = baseName.replace(/\.controller$/, "");
639
+ testFiles[`src/tests/${specFileName(resourceName, "controller")}`] =
640
+ controllerSpecTemplate(resourceName, normalizedPath);
641
+ continue;
642
+ }
643
+ if (normalizedPath.endsWith(".service.ts")) {
644
+ const resourceName = baseName.replace(/\.service$/, "");
645
+ testFiles[`src/tests/${specFileName(resourceName, "service")}`] =
646
+ serviceSpecTemplate(resourceName, normalizedPath);
647
+ continue;
648
+ }
649
+ if (normalizedPath.endsWith(".routes.ts")) {
650
+ const resourceName = baseName.replace(/\.routes$/, "");
651
+ testFiles[`src/tests/${specFileName(resourceName, "routes")}`] =
652
+ routeSpecTemplate(resourceName, normalizedPath);
653
+ continue;
654
+ }
655
+ if (normalizedPath.endsWith(".middleware.ts")) {
656
+ const resourceName = baseName.replace(/\.middleware$/, "");
657
+ testFiles[`src/tests/${specFileName(resourceName, "middleware")}`] =
658
+ middlewareSpecTemplate(resourceName, normalizedPath);
659
+ }
469
660
  }
661
+ return {
662
+ ...sourceFiles,
663
+ ...testFiles
664
+ };
470
665
  };
471
666
  export const writeGeneratedFiles = (targetDir, files) => {
472
667
  for (const [relativePath, content] of Object.entries(files)) {
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sculptor/cli",
3
- "version": "0.1.8",
3
+ "version": "0.1.10",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "sc": "./bin/sc.js"