tsconfig.app.json 'includes' does not respect glob patterns for cypress
- Ngôn ngữ chính
- TypeScript
- Star
- 27k
- Fork
- 11.8k
- Merge trung bình
- 14 giờ 23 phút
- Pull request đã merge (30 ngày)
- 162
Mô tả
### Which @angular/* package(s) are the source of the bug?
Don't known / other
### Is this a regression?
Yes
### Description
I've included a link to repo that provides the basic setup. To test the issue, you just need to run `npx cypress open` with the setup I've created, then click on 'component tests'. Now click on 'app.ts'. The error is provided below - essentially it's asking me to include the app.ts file in either the 'files' or 'include' property of the tsconfig.
This is what **works** when added to `tsconfig.app.json`:
```
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "./out-tsc/app",
"types": []
},
"files": [
"src/main.ts",
"cypress/component/app.ts"
],
"include": [
"src/**/*.d.ts",
]
}
```
This is what **fails** when added to `tsconfig.app.json`:
```
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "./out-tsc/app",
"types": []
},
"files": [
"src/main.ts",
],
"include": [
"src/**/*.d.ts",
"cypress/**/*.ts",
]
}
```
I checked multiple sources, and cannot see any error in the cypress glob pattern added to `include`.
Note, this also fails:
```
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "./out-tsc/app",
"types": []
},
"files": [
"src/main.ts",
],
"include": [
"src/**/*.d.ts",
"cypress/component/app.ts"
]
}
```
It appears to be a bug - I can't define it in any other terms at this point, as it's a basic example, applied to a boilerplate Angular application, with virtually no additions/tweaks outside of the this app.ts test.
### Please provide a link to a minimal reproduction of the bug
https://github.com/CMadden8/cypress-angular-test
### Please provide the exception or error you saw
```true
Module build failed (from ./node_modules/@ngtools/webpack/src/ivy/index.js):
Error: C:\[omitted path]\cypress\component\app.ts is missing from the TypeScript compilation. Please make sure it is in your tsconfig via the 'files' or 'include' property.
```
### Please provide the environment you discovered this bug in (run `ng version`)
```true
Angular CLI: 15.2.2
Node: 16.14.2
Package Manager: npm 8.5.0
OS: win32 x64
Angular: 15.2.2
... animations, cli, common, compiler, compiler-cli, core, forms
... platform-browser, platform-browser-dynamic, router
Package Version
---------------------------------------------------------
@angular-devkit/architect 0.1502.2
@angular-devkit/build-angular 15.2.2
@angular-devkit/core 15.2.2
@angular-devkit/schematics 15.2.2
@schematics/angular 15.2.2
rxjs 7.8.0
typescript 4.9.5
```
### Anything else?
@badeball/cypress-cucumber-preprocessor and ts-loader were installed alongside cypress, and configured for component testing within cypress.config.ts
Hướng dẫn đóng góp
Hướng nghiên cứu
Tái hiện lỗi bằng `npx cypress open` trong repository được liên kết, sau đó kiểm tra `tsconfig.app.json`, `cypress.config.ts` và đường dẫn build Angular được `@ngtools/webpack` báo cáo. Xác minh cách tệp component của Cypress được chọn để biên dịch TypeScript. Được xem là hoàn tất khi component test mở mà không có lỗi thiếu khỏi quá trình biên dịch khi các tệp Cypress được chỉ định thông qua `include`.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- angular, cypress, typescript, webpack
- Lĩnh vực
- build-system, cli, testing
- Loại issue
- Lỗi
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 45/100