import { BaseCommand } from '../../modules/ace/main.ts'; /** * Command to create a new Japa test file. * Supports multiple test suites and automatically detects or prompts for * the appropriate suite and directory based on application configuration. * * @example * ``` * ace make:test UserController * ace make:test UserModel --suite=unit * ace make:test AuthService --suite=integration * ``` */ export default class MakeTest extends BaseCommand { #private; /** * The command name */ static commandName: string; /** * The command description */ static description: string; /** * Name of the test file to create */ name: string; /** * Test suite name where the test file should be created */ suite?: string; /** * Read the contents from this file (if the flag exists) and use * it as the raw contents */ contentsFrom: string; /** * Forcefully overwrite existing files */ force: boolean; /** * The stub template file to use for generating the test file */ protected stubPath: string; /** * Execute the command to create a new test file. * Validates the suite exists, prompts for missing information, * and generates the test file in the appropriate location. */ run(): Promise; }