mirror of
https://github.com/angular/angular.git
synced 2026-09-14 13:54:52 +08:00
2664bc2b3e
Switches the integration tests form Puppeteer/webdriver-manager to the Bazel-managed Chromium/Chromedriver. This is now possible with the new integration test rule for which we can consult the `dev-infra/bazel/browsers` toolchain and setup environment variables. This has been configured already in a previous commit. This commit also includes some additional small cleanups necessary for the new integration test rule: * The `test.sh` scripts have been renamed as they would conflict with the `test.sh` scripts generated by the integration test rule. Previously this was not an issue because tests were declared at a higher-level. As mentioned though this has other downsides and it is trivial to rename the file. * Related to the point above, since tests are now declared witin the actual test folder (for perf e.g.), `package.json` files setting `"type": "module"` will accidentally cause the `nodejs_test`-generated files to be considered ESM. This is not correct and likely needs to be fixed upstream in `rules_nodejs` where explicit `.cjs` extensions should be used. This is only happening **once** in the `injectable-def` test so it is acceptable doing that for now. PR Close #44238
CliHelloWorldLazy
This test checks bundle sizes when there is a lazy module. It also checks if the ngDevMode global variable and string references in packages/core/src/util/ng_dev_mode.ts are correctly removed.
This test contains a lazy route to ensure ngDevMode removal happens even across chunks, and a payload size check in /goldens/size-tracking/integration-payloads.json to ensure extra code is not retained accidentally.