Easier way to provide disableConsoleIntercept to ng test with vitest
- 主要语言
- TypeScript
- 星标
- 27k
- 派生
- 11.8k
- 平均合并
- 14 小时 23 分钟
- 30 天内合并 PR
- 162
描述
### Command
test
### Description
Vitest by default captures the console output, which reduces the ways available to debug tests.
However, there is no direct equivalent option on `ng test` to enable logging and no direct way to pass the `--disableConsoleIntercept` flag to the underlying vitest command.
Attempting to run `ng test --disableConsoleIntercept`
```
Error: Unknown argument: disableConsoleIntercept
```
Attempting to run `ng test -- --disableConsoleIntercept` results in
```
Option '--' has been specified multiple times. The value '--disableConsoleIntercept' will be used.
Error: Schema validation failed with the following errors:
Data path "" must NOT have additional properties().
ELIFECYCLE Test failed. See above for more details.
```
Instead it seems like you would have to create a custom vitest configuration, with several other properties, and then provide that in angular.json which is rather heavy handed for simple one-time debugging.
### Describe the solution you'd like
Simple forwarding of arguments `ng test -- --disableConsoleIntercept` which would pass the arguments to the underlying vitest command.
### Describe alternatives you've considered
* Support for this flag on the ng test command directly (though this is not a generic argument for all test types)
* Support for some "forwardedArgs" flag on ng test that allows for flags to be forwarded
贡献指南
调研方向
先从 ng test 命令的参数解析及其与 Vitest 的集成开始,然后重现报告中的命令行错误。完成标准是:-- 之后的参数能够在没有 schema 验证错误的情况下传递给 Vitest,包括 --disableConsoleIntercept,并且相关命令测试包含覆盖率。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- angular, typescript
- 领域
- cli, testing
- Issue 类型
- 功能
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 55/100