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