angular / angular/angular-cli

Easier way to provide disableConsoleIntercept to ng test with vitest

Open
#32,726 0 comments 0 reactions 0 assignees View on GitHub
area: @angular/cli gemini-triaged
Dominant language
TypeScript
Stars
27k
Forks
11.8k
Avg merge
14h 23m
Merged PRs (30d)
162

Description

### 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

Contributor guide

Open the contributing guide

Research direction

Start with the ng test command's argument parsing and its Vitest integration, then reproduce the reported command-line errors. Done means arguments after -- reach Vitest without schema validation errors, including --disableConsoleIntercept, with coverage in the relevant command tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
angular, typescript
Domain
cli, testing
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.