@schematics/angular
Version:
Schematics specific to Angular
46 lines (45 loc) • 1.98 kB
JSON
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "SchematicsAngularJasmineToVitest",
"title": "Angular Jasmine to Vitest Schematic",
"type": "object",
"description": "Refactors a Jasmine test file to use Vitest.",
"properties": {
"include": {
"type": "string",
"description": "A path to a specific file or directory to refactor. If not provided, all test files in the project will be refactored."
},
"fileSuffix": {
"type": "string",
"description": "The file suffix to identify test files (e.g., '.spec.ts', '.test.ts').",
"default": ".spec.ts"
},
"project": {
"type": "string",
"description": "The name of the project where the tests should be refactored. If not specified, the CLI will determine the project from the current directory.",
"$default": {
"$source": "projectName"
}
},
"verbose": {
"type": "boolean",
"description": "Enable verbose logging to see detailed information about the transformations being applied.",
"default": false
},
"addImports": {
"type": "boolean",
"description": "Whether to add imports for the Vitest API. The Angular `unit-test` system automatically uses the Vitest globals option, which means explicit imports for global APIs like `describe`, `it`, `expect`, and `vi` are often not strictly necessary unless Vitest has been configured not to use globals.",
"default": false
},
"browserMode": {
"type": "boolean",
"description": "Whether the tests are intended to run in browser mode. If true, the `toHaveClass` assertions are left as is because Vitest browser mode has such an assertion. Otherwise they're migrated to an equivalent assertion.",
"default": false
},
"report": {
"type": "boolean",
"description": "Whether to generate a summary report file (jasmine-vitest-<date>.md) in the project root.",
"default": true
}
}
}