From d86fb32746f975a0411bfd5083aaec13c35ae6ed Mon Sep 17 00:00:00 2001 From: OJ Kwon <1210596+kwonoj@users.noreply.github.com> Date: Thu, 18 May 2023 09:55:34 -0700 Subject: [PATCH] test(turbopack): script to sync latest test lists --- .github/workflows/build_test_deploy.yml | 2 +- .../next-dev-tests/sync-tests-manifest.js | 64 ++ .../crates/next-dev-tests/tests-manifest.js | 729 ++++++++++++++++++ .../crates/next-dev-tests/tests-manifest.json | 7 - run-tests.js | 2 +- 5 files changed, 795 insertions(+), 9 deletions(-) create mode 100644 packages/next-swc/crates/next-dev-tests/sync-tests-manifest.js create mode 100644 packages/next-swc/crates/next-dev-tests/tests-manifest.js delete mode 100644 packages/next-swc/crates/next-dev-tests/tests-manifest.json diff --git a/.github/workflows/build_test_deploy.yml b/.github/workflows/build_test_deploy.yml index 767315321de5..319d0e198571 100644 --- a/.github/workflows/build_test_deploy.yml +++ b/.github/workflows/build_test_deploy.yml @@ -828,7 +828,7 @@ jobs: NEXT_BINDINGS_BIN: /work/packages/next-swc/native/next-swc.linux-x64-gnu.node # Glob pattern to run specific tests with --turbo. NEXT_DEV_TEST_GLOB: '*' - NEXT_EXTERNAL_TESTS_FILTERS: /work/packages/next-swc/crates/next-dev-tests/tests-manifest.json + NEXT_EXTERNAL_TESTS_FILTERS: /work/packages/next-swc/crates/next-dev-tests/tests-manifest.js strategy: fail-fast: false diff --git a/packages/next-swc/crates/next-dev-tests/sync-tests-manifest.js b/packages/next-swc/crates/next-dev-tests/sync-tests-manifest.js new file mode 100644 index 000000000000..7ac67a707d4c --- /dev/null +++ b/packages/next-swc/crates/next-dev-tests/sync-tests-manifest.js @@ -0,0 +1,64 @@ +/// A script to remove / add next.js tests into the lists if there are any changes. + +const fs = require('fs') +const _glob = require('glob') +const { promisify } = require('util') +const glob = promisify(_glob) +const path = require('path') + +const generateManifest = (enabledTests, disabledTests) => ` +// Tests that are currently enabled with Turbopack in CI. +// Add new test when Turbopack updates to fix / implement a feature. +const enabledTests = ${enabledTests} + +// Tests that are currently disabled with Turbopack in CI. +const disabledTests = ${disabledTests} + +module.exports = { + enabledTests, + disabledTests, +}` + +const main = async () => { + // Read existing manifests + let enabledTests = [] + let disabledTests = [] + + const manifestPath = path.resolve(__dirname, 'tests-manifest.js') + if (fs.existsSync(manifestPath)) { + const manifest = require(manifestPath) + enabledTests = manifest.enabledTests + disabledTests = manifest.disabledTests + } else { + throw new Error('a') + } + + // Collect all test files + const testFiles = ( + await glob('**/*.test.{js,ts,tsx}', { + nodir: true, + cwd: path.resolve(__dirname, '../../../../test'), + }) + ).map((file) => `test/${file}`) + + // Naively update enabled / disabled tests to the latest. + // This is not the most efficient way to do this, but it's good enough for now. + + // First, remove enabled tests that are no longer in the test directory. + enabledTests = enabledTests.filter((testFile) => testFiles.includes(testFile)) + // Anything else are disabled. + disabledTests = testFiles.filter( + (testFile) => !enabledTests.includes(testFile) + ) + + fs.writeFileSync( + manifestPath, + generateManifest( + JSON.stringify(enabledTests, null, 2), + JSON.stringify(disabledTests, null, 2) + ), + 'utf-8' + ) +} + +main().catch((e) => console.error(e)) diff --git a/packages/next-swc/crates/next-dev-tests/tests-manifest.js b/packages/next-swc/crates/next-dev-tests/tests-manifest.js new file mode 100644 index 000000000000..e7d244c3c25f --- /dev/null +++ b/packages/next-swc/crates/next-dev-tests/tests-manifest.js @@ -0,0 +1,729 @@ +// Tests that are currently enabled with Turbopack in CI. +// Add new test when Turbopack updates to fix / implement a feature. +const enabledTests = [ + 'test/development/acceptance-app/dynamic-error.test.ts', + 'test/development/basic/legacy-decorators.test.ts', + 'test/integration/plugin-mdx-rs/test/index.test.js', + 'test/e2e/app-dir/underscore-ignore-app-paths/underscore-ignore-app-paths.test.ts', + 'test/e2e/postcss-config-cjs/index.test.ts', +] + +// Tests that are currently disabled with Turbopack in CI. +const disabledTests = [ + 'test/development/acceptance-app/app-hmr-changes.test.ts', + 'test/development/acceptance-app/component-stack.test.ts', + 'test/development/acceptance-app/editor-links.test.ts', + 'test/development/acceptance-app/error-message-url.test.ts', + 'test/development/acceptance-app/error-recovery.test.ts', + 'test/development/acceptance-app/hydration-error.test.ts', + 'test/development/acceptance-app/invalid-imports.test.ts', + 'test/development/acceptance-app/ReactRefresh.test.ts', + 'test/development/acceptance-app/ReactRefreshLogBox-builtins.test.ts', + 'test/development/acceptance-app/ReactRefreshLogBox-scss.test.ts', + 'test/development/acceptance-app/ReactRefreshLogBox.test.ts', + 'test/development/acceptance-app/ReactRefreshLogBoxMisc.test.ts', + 'test/development/acceptance-app/ReactRefreshModule.test.ts', + 'test/development/acceptance-app/ReactRefreshRegression.test.ts', + 'test/development/acceptance-app/ReactRefreshRequire.test.ts', + 'test/development/acceptance-app/rsc-build-errors.test.ts', + 'test/development/acceptance-app/server-components.test.ts', + 'test/development/acceptance-app/version-staleness.test.ts', + 'test/development/acceptance/component-stack.test.ts', + 'test/development/acceptance/error-recovery.test.ts', + 'test/development/acceptance/hydration-error.test.ts', + 'test/development/acceptance/ReactRefresh.test.ts', + 'test/development/acceptance/ReactRefreshLogBox-app-doc.test.ts', + 'test/development/acceptance/ReactRefreshLogBox-builtins.test.ts', + 'test/development/acceptance/ReactRefreshLogBox-scss.test.ts', + 'test/development/acceptance/ReactRefreshLogBox.test.ts', + 'test/development/acceptance/ReactRefreshLogBoxMisc.test.ts', + 'test/development/acceptance/ReactRefreshModule.test.ts', + 'test/development/acceptance/ReactRefreshRegression.test.ts', + 'test/development/acceptance/ReactRefreshRequire.test.ts', + 'test/development/acceptance/server-component-compiler-errors-in-pages.test.ts', + 'test/development/api-cors-with-rewrite/index.test.ts', + 'test/development/api-route-errors/index.test.ts', + 'test/development/app-dir/multiple-compiles-single-route/multiple-compiles-single-route.test.ts', + 'test/development/app-hmr/hmr.test.ts', + 'test/development/app-render-error-log/app-render-error-log.test.ts', + 'test/development/basic/define-class-fields.test.ts', + 'test/development/basic/emotion-swc.test.ts', + 'test/development/basic/gssp-ssr-change-reloading/test/index.test.ts', + 'test/development/basic/hmr.test.ts', + 'test/development/basic/misc.test.ts', + 'test/development/basic/next-dynamic.test.ts', + 'test/development/basic/node-builtins.test.ts', + 'test/development/basic/project-directory-rename.test.ts', + 'test/development/basic/styled-components-disabled.test.ts', + 'test/development/basic/styled-components.test.ts', + 'test/development/basic/tailwind-jit.test.ts', + 'test/development/basic/theme-ui.test.ts', + 'test/development/client-dev-overlay/index.test.ts', + 'test/development/correct-tsconfig-defaults/index.test.ts', + 'test/development/dotenv-default-expansion/index.test.ts', + 'test/development/gssp-notfound/index.test.ts', + 'test/development/jsconfig-path-reloading/index.test.ts', + 'test/development/middleware-warnings/index.test.ts', + 'test/development/next-font/build-errors.test.ts', + 'test/development/next-font/deprecated-package.test.ts', + 'test/development/next-font/font-loader-in-document-error.test.ts', + 'test/development/project-directory-with-styled-jsx-suffix/index.test.ts', + 'test/development/repeated-dev-edits/repeated-dev-edits.test.ts', + 'test/development/tsconfig-path-reloading/index.test.ts', + 'test/development/typescript-auto-install/index.test.ts', + 'test/development/watch-config-file/index.test.ts', + 'test/development/webpack-issuer-deprecation-warning/index.test.ts', + 'test/e2e/404-page-router/index.test.ts', + 'test/e2e/app-dir-legacy-edge-runtime-config/index.test.ts', + 'test/e2e/app-dir/_allow-underscored-root-directory/_allow-underscored-root-directory.test.ts', + 'test/e2e/app-dir/actions/app-action.test.ts', + 'test/e2e/app-dir/app-a11y/index.test.ts', + 'test/e2e/app-dir/app-alias/app-alias.test.ts', + 'test/e2e/app-dir/app-basepath/index.test.ts', + 'test/e2e/app-dir/app-client-cache/client-cache.test.ts', + 'test/e2e/app-dir/app-css-pageextensions/index.test.ts', + 'test/e2e/app-dir/app-css/index.test.ts', + 'test/e2e/app-dir/app-edge/app-edge.test.ts', + 'test/e2e/app-dir/app-external/app-external.test.ts', + 'test/e2e/app-dir/app-middleware/app-middleware.test.ts', + 'test/e2e/app-dir/app-prefetch/prefetching.test.ts', + 'test/e2e/app-dir/app-rendering/rendering.test.ts', + 'test/e2e/app-dir/app-routes-trailing-slash/app-routes-trailing-slash.test.ts', + 'test/e2e/app-dir/app-routes/app-custom-routes.test.ts', + 'test/e2e/app-dir/app-static/app-static-custom-handler.test.ts', + 'test/e2e/app-dir/app-static/app-static.test.ts', + 'test/e2e/app-dir/app-validation/validation.test.ts', + 'test/e2e/app-dir/app/index.test.ts', + 'test/e2e/app-dir/app/standalone.test.ts', + 'test/e2e/app-dir/app/useReportWebVitals.test.ts', + 'test/e2e/app-dir/app/vercel-speed-insights.test.ts', + 'test/e2e/app-dir/asset-prefix/asset-prefix.test.ts', + 'test/e2e/app-dir/async-component-preload/async-component-preload.test.ts', + 'test/e2e/app-dir/autoscroll-with-css-modules/index.test.ts', + 'test/e2e/app-dir/back-button-download-bug/back-button-download-bug.test.ts', + 'test/e2e/app-dir/create-root-layout/create-root-layout.test.ts', + 'test/e2e/app-dir/crypto-globally-available/crypto-globally-available.test.ts', + 'test/e2e/app-dir/draft-mode/draft-mode-edge.test.ts', + 'test/e2e/app-dir/draft-mode/draft-mode-node.test.ts', + 'test/e2e/app-dir/dynamic-href/dynamic-href.test.ts', + 'test/e2e/app-dir/dynamic/dynamic.test.ts', + 'test/e2e/app-dir/edge-runtime-node-compatibility/edge-runtime-node-compatibility.test.ts', + 'test/e2e/app-dir/front-redirect-issue/front-redirect-issue.test.ts', + 'test/e2e/app-dir/global-error/global-error.test.ts', + 'test/e2e/app-dir/hooks/hooks.test.ts', + 'test/e2e/app-dir/i18n-hybrid/i18n-hybrid.test.js', + 'test/e2e/app-dir/import/import.test.ts', + 'test/e2e/app-dir/interception-middleware-rewrite/interception-middleware-rewrite.test.ts', + 'test/e2e/app-dir/interpolability-with-pages/navigation.test.ts', + 'test/e2e/app-dir/layout-params/layout-params.test.ts', + 'test/e2e/app-dir/mdx/mdx.test.ts', + 'test/e2e/app-dir/metadata-dynamic-routes/index.test.ts', + 'test/e2e/app-dir/metadata-missing-metadata-base/index.test.ts', + 'test/e2e/app-dir/metadata-suspense/index.test.ts', + 'test/e2e/app-dir/metadata/metadata.test.ts', + 'test/e2e/app-dir/navigation/navigation.test.ts', + 'test/e2e/app-dir/next-font/next-font.test.ts', + 'test/e2e/app-dir/next-image/next-image.test.ts', + 'test/e2e/app-dir/not-found/not-found.test.ts', + 'test/e2e/app-dir/pages-to-app-routing/pages-to-app-routing.test.ts', + 'test/e2e/app-dir/parallel-routes-and-interception/parallel-routes-and-interception.test.ts', + 'test/e2e/app-dir/parallel-routes-not-found/parallel-routes-not-found.test.ts', + 'test/e2e/app-dir/rewrites-redirects/rewrites-redirects.test.ts', + 'test/e2e/app-dir/root-layout-redirect/root-layout-redirect.test.ts', + 'test/e2e/app-dir/root-layout/root-layout.test.ts', + 'test/e2e/app-dir/route-page-manifest-bug/route-page-manifest-bug.test.ts', + 'test/e2e/app-dir/router-autoscroll/router-autoscroll.test.ts', + 'test/e2e/app-dir/router-stuck-dynamic-static-segment/router-stuck-dynamic-static-segment.test.ts', + 'test/e2e/app-dir/rsc-basic/rsc-basic.test.ts', + 'test/e2e/app-dir/search-params-react-key/layout-params.test.ts', + 'test/e2e/app-dir/searchparams-static-bailout/searchparams-static-bailout.test.ts', + 'test/e2e/app-dir/set-cookies/set-cookies.test.ts', + 'test/e2e/app-dir/similar-pages-paths/similar-pages-paths.test.ts', + 'test/e2e/app-dir/test-template/{{ toFileName name }}/{{ toFileName name }}.test.ts', + 'test/e2e/app-dir/trailingslash/trailingslash.test.ts', + 'test/e2e/app-dir/use-params/use-params.test.ts', + 'test/e2e/app-dir/use-selected-layout-segment-s/use-selected-layout-segment-s.test.ts', + 'test/e2e/app-dir/with-babel/with-babel.test.ts', + 'test/e2e/basepath-trailing-slash.test.ts', + 'test/e2e/basepath.test.ts', + 'test/e2e/browserslist-extends/index.test.ts', + 'test/e2e/browserslist/browserslist.test.ts', + 'test/e2e/browserslist/legacybrowsers-false.test.ts', + 'test/e2e/browserslist/legacybrowsers-true.test.ts', + 'test/e2e/config-promise-export/async-function.test.ts', + 'test/e2e/config-promise-export/promise.test.ts', + 'test/e2e/disable-js-preload/test/index.test.js', + 'test/e2e/dynamic-route-interpolation/index.test.ts', + 'test/e2e/edge-api-endpoints-can-receive-body/index.test.ts', + 'test/e2e/edge-async-local-storage/index.test.ts', + 'test/e2e/edge-can-read-request-body/index.test.ts', + 'test/e2e/edge-can-use-wasm-files/index.test.ts', + 'test/e2e/edge-compiler-can-import-blob-assets/index.test.ts', + 'test/e2e/edge-compiler-module-exports-preference/index.test.ts', + 'test/e2e/edge-configurable-runtime/index.test.ts', + 'test/e2e/edge-pages-support/index.test.ts', + 'test/e2e/edge-runtime-uses-edge-light-import-specifier-for-packages/edge-runtime-uses-edge-light-import-specifier-for-packages.test.ts', + 'test/e2e/fetch-failures-have-good-stack-traces-in-edge-runtime/fetch-failures-have-good-stack-traces-in-edge-runtime.test.ts', + 'test/e2e/getserversideprops/test/index.test.ts', + 'test/e2e/handle-non-hoisted-swc-helpers/index.test.ts', + 'test/e2e/i18n-api-support/index.test.ts', + 'test/e2e/i18n-data-fetching-redirect/index.test.ts', + 'test/e2e/i18n-default-locale-redirect/i18n-default-locale-redirect.test.ts', + 'test/e2e/i18n-disallow-multiple-locales/i18n-disallow-multiple-locales.test.ts', + 'test/e2e/i18n-ignore-redirect-source-locale/redirects-with-basepath.test.ts', + 'test/e2e/i18n-ignore-redirect-source-locale/redirects.test.ts', + 'test/e2e/i18n-ignore-rewrite-source-locale/rewrites-with-basepath.test.ts', + 'test/e2e/i18n-ignore-rewrite-source-locale/rewrites.test.ts', + 'test/e2e/ignore-invalid-popstateevent/with-i18n.test.ts', + 'test/e2e/ignore-invalid-popstateevent/without-i18n.test.ts', + 'test/e2e/instrumentation-hook-src/instrumentation-hook-src.test.ts', + 'test/e2e/instrumentation-hook/instrumentation-hook.test.ts', + 'test/e2e/link-with-api-rewrite/index.test.ts', + 'test/e2e/manual-client-base-path/index.test.ts', + 'test/e2e/middleware-base-path/test/index.test.ts', + 'test/e2e/middleware-custom-matchers-basepath/test/index.test.ts', + 'test/e2e/middleware-custom-matchers-i18n/test/index.test.ts', + 'test/e2e/middleware-custom-matchers/test/index.test.ts', + 'test/e2e/middleware-dynamic-basepath-matcher/test/index.test.ts', + 'test/e2e/middleware-fetches-with-any-http-method/index.test.ts', + 'test/e2e/middleware-fetches-with-body/index.test.ts', + 'test/e2e/middleware-general/test/index.test.ts', + 'test/e2e/middleware-matcher/index.test.ts', + 'test/e2e/middleware-redirects/test/index.test.ts', + 'test/e2e/middleware-request-header-overrides/test/index.test.ts', + 'test/e2e/middleware-responses/test/index.test.ts', + 'test/e2e/middleware-rewrites/test/index.test.ts', + 'test/e2e/middleware-shallow-link/index.test.ts', + 'test/e2e/middleware-trailing-slash/test/index.test.ts', + 'test/e2e/multi-zone/multi-zone.test.ts', + 'test/e2e/new-link-behavior/child-a-tag-error.test.ts', + 'test/e2e/new-link-behavior/index.test.ts', + 'test/e2e/new-link-behavior/material-ui.test.ts', + 'test/e2e/new-link-behavior/stitches.test.ts', + 'test/e2e/new-link-behavior/typescript.test.ts', + 'test/e2e/next-font/basepath.test.ts', + 'test/e2e/next-font/google-fetch-error.test.ts', + 'test/e2e/next-font/index.test.ts', + 'test/e2e/next-font/with-font-declarations-file.test.ts', + 'test/e2e/next-font/with-proxy.test.ts', + 'test/e2e/next-font/without-preloaded-fonts.test.ts', + 'test/e2e/next-head/index.test.ts', + 'test/e2e/next-image-forward-ref/index.test.ts', + 'test/e2e/next-script/index.test.ts', + 'test/e2e/no-eslint-warn-with-no-eslint-config/index.test.ts', + 'test/e2e/nonce-head-manager/index.test.ts', + 'test/e2e/og-api/index.test.ts', + 'test/e2e/opentelemetry/opentelemetry.test.ts', + 'test/e2e/optimized-loading/test/index.test.ts', + 'test/e2e/prerender-crawler.test.ts', + 'test/e2e/prerender-native-module.test.ts', + 'test/e2e/prerender.test.ts', + 'test/e2e/proxy-request-with-middleware/test/index.test.ts', + 'test/e2e/reload-scroll-backforward-restoration/index.test.ts', + 'test/e2e/repeated-forward-slashes-error/repeated-forward-slashes-error.test.ts', + 'test/e2e/skip-trailing-slash-redirect/index.test.ts', + 'test/e2e/ssr-react-context/index.test.ts', + 'test/e2e/streaming-ssr/index.test.ts', + 'test/e2e/styled-jsx/index.test.ts', + 'test/e2e/swc-warnings/index.test.ts', + 'test/e2e/switchable-runtime/index.test.ts', + 'test/e2e/test-template/{{ toFileName name }}/{{ toFileName name }}.test.ts', + 'test/e2e/test-utils-tests/basic/basic.test.ts', + 'test/e2e/trailingslash-with-rewrite/index.test.ts', + 'test/e2e/transpile-packages/index.test.ts', + 'test/e2e/type-module-interop/index.test.ts', + 'test/e2e/undici-fetch/index.test.ts', + 'test/e2e/yarn-pnp/test/with-eslint.test.ts', + 'test/e2e/yarn-pnp/test/with-mdx.test.ts', + 'test/e2e/yarn-pnp/test/with-next-sass.test.ts', + 'test/examples/examples.test.ts', + 'test/integration/404-page-app/test/index.test.js', + 'test/integration/404-page-custom-error/test/index.test.js', + 'test/integration/404-page-ssg/test/index.test.js', + 'test/integration/404-page/test/index.test.js', + 'test/integration/500-page/test/index.test.js', + 'test/integration/absolute-assetprefix/test/index.test.js', + 'test/integration/amp-export-validation/test/index.test.js', + 'test/integration/amphtml-custom-optimizer/test/index.test.js', + 'test/integration/amphtml-custom-validator/test/index.test.js', + 'test/integration/amphtml-fragment-style/test/index.test.js', + 'test/integration/amphtml-ssg/test/index.test.js', + 'test/integration/amphtml/test/index.test.js', + 'test/integration/api-body-parser/test/index.test.js', + 'test/integration/api-catch-all/test/index.test.js', + 'test/integration/api-support/test/index.test.js', + 'test/integration/app-aspath/test/index.test.js', + 'test/integration/app-dir-export/test/config.test.ts', + 'test/integration/app-dir-export/test/dynamicapiroute-dev.test.ts', + 'test/integration/app-dir-export/test/dynamicapiroute-prod.test.ts', + 'test/integration/app-dir-export/test/dynamicpage-dev.test.ts', + 'test/integration/app-dir-export/test/dynamicpage-prod.test.ts', + 'test/integration/app-dir-export/test/start.test.ts', + 'test/integration/app-dir-export/test/trailing-slash-dev.test.ts', + 'test/integration/app-dir-export/test/trailing-slash-start.test.ts', + 'test/integration/app-document-add-hmr/test/index.test.js', + 'test/integration/app-document-import-order/test/index.test.js', + 'test/integration/app-document-remove-hmr/test/index.test.js', + 'test/integration/app-document-style-fragment/test/index.test.js', + 'test/integration/app-document/test/index.test.js', + 'test/integration/app-dynamic-error/test/index.test.ts', + 'test/integration/app-functional/test/index.test.js', + 'test/integration/app-tree/test/index.test.js', + 'test/integration/app-types/app-types.test.js', + 'test/integration/async-modules/test/index.test.js', + 'test/integration/auto-export-error-bail/test/index.test.js', + 'test/integration/auto-export-query-error/test/index.test.js', + 'test/integration/auto-export/test/index.test.js', + 'test/integration/babel-custom/test/index.test.js', + 'test/integration/babel/test/index.test.js', + 'test/integration/basepath-root-catch-all/test/index.test.js', + 'test/integration/bigint/test/index.test.js', + 'test/integration/broken-webpack-plugin/test/index.test.js', + 'test/integration/build-indicator/test/index.test.js', + 'test/integration/build-output/test/index.test.js', + 'test/integration/build-spinners/index.test.ts', + 'test/integration/build-trace-extra-entries-turbo/test/index.test.js', + 'test/integration/build-trace-extra-entries/test/index.test.js', + 'test/integration/build-warnings/test/index.test.js', + 'test/integration/catches-missing-getStaticProps/test/index.test.js', + 'test/integration/chunking/test/index.test.js', + 'test/integration/clean-distdir/test/index.test.js', + 'test/integration/cli/test/index.test.js', + 'test/integration/client-404/test/index.test.js', + 'test/integration/client-navigation-a11y/test/index.test.js', + 'test/integration/client-navigation/test/index.test.js', + 'test/integration/client-shallow-routing/test/index.test.js', + 'test/integration/compression/test/index.test.js', + 'test/integration/config-devtool-dev/test/index.test.js', + 'test/integration/config-experimental-warning/test/index.test.js', + 'test/integration/config-mjs/test/index.test.js', + 'test/integration/config-output-export/test/index.test.ts', + 'test/integration/config-promise-error/test/index.test.js', + 'test/integration/config-resolve-alias/test/index.test.js', + 'test/integration/config-schema-check/test/index.test.js', + 'test/integration/config-syntax-error/test/index.test.js', + 'test/integration/config-validation/test/index.test.ts', + 'test/integration/config/test/index.test.js', + 'test/integration/conflicting-app-page-error/test/index.test.js', + 'test/integration/conflicting-public-file-page/test/index.test.js', + 'test/integration/conflicting-ssg-paths/test/index.test.js', + 'test/integration/create-next-app/index.test.ts', + 'test/integration/create-next-app/templates.test.ts', + 'test/integration/critical-css/test/index.test.js', + 'test/integration/css-client-nav/test/index.test.js', + 'test/integration/css-customization/test/index.test.js', + 'test/integration/css-features/test/index.test.js', + 'test/integration/css-minify/test/index.test.js', + 'test/integration/css-modules/test/index.test.js', + 'test/integration/css/test/group-1.test.js', + 'test/integration/css/test/group-2.test.js', + 'test/integration/custom-error-page-exception/test/index.test.js', + 'test/integration/custom-error/test/index.test.js', + 'test/integration/custom-page-extension/test/index.test.js', + 'test/integration/custom-routes-catchall/test/index.test.js', + 'test/integration/custom-routes-i18n-index-redirect/test/index.test.js', + 'test/integration/custom-routes-i18n/test/index.test.js', + 'test/integration/custom-routes/test/index.test.js', + 'test/integration/custom-server-types/test/index.test.js', + 'test/integration/custom-server/test/index.test.js', + 'test/integration/data-fetching-errors/test/index.test.js', + 'test/integration/dedupes-scripts/test/index.test.js', + 'test/integration/development-hmr-refresh/test/index.test.js', + 'test/integration/development-runtime-config/test/index.test.js', + 'test/integration/disable-js/test/index.test.js', + 'test/integration/dist-dir/test/index.test.js', + 'test/integration/document-file-dependencies/test/index.test.js', + 'test/integration/document-head-warnings/test/index.test.js', + 'test/integration/draft-mode/test/index.test.ts', + 'test/integration/duplicate-pages/test/index.test.js', + 'test/integration/dynamic-optional-routing-root-fallback/test/index.test.js', + 'test/integration/dynamic-optional-routing-root-static-paths/test/index.test.js', + 'test/integration/dynamic-optional-routing/test/index.test.js', + 'test/integration/dynamic-require/test/index.test.js', + 'test/integration/dynamic-route-rename/test/index.test.js', + 'test/integration/dynamic-routing/test/index.test.js', + 'test/integration/dynamic-routing/test/middleware.test.js', + 'test/integration/edge-runtime-configurable-guards/test/index.test.js', + 'test/integration/edge-runtime-dynamic-code/test/index.test.js', + 'test/integration/edge-runtime-module-errors/test/index.test.js', + 'test/integration/edge-runtime-response-error/test/index.test.js', + 'test/integration/edge-runtime-streaming-error/test/index.test.ts', + 'test/integration/edge-runtime-with-node.js-apis/test/index.test.ts', + 'test/integration/empty-object-getInitialProps/test/index.test.js', + 'test/integration/empty-project/test/index.test.js', + 'test/integration/env-config/test/index.test.js', + 'test/integration/error-in-error/test/index.test.js', + 'test/integration/error-load-fail/test/index.test.js', + 'test/integration/error-plugin-stack-overflow/test/index.test.js', + 'test/integration/errors-on-output-to-public/test/index.test.js', + 'test/integration/errors-on-output-to-static/test/index.test.js', + 'test/integration/eslint/test/index.test.js', + 'test/integration/export-404/test/index.test.js', + 'test/integration/export-default-map/test/index.test.js', + 'test/integration/export-dynamic-pages/test/index.test.js', + 'test/integration/export-fallback-true-error/test/index.test.js', + 'test/integration/export-getInitialProps-warn/test/index.test.js', + 'test/integration/export-image-default/test/index.test.js', + 'test/integration/export-image-loader-legacy/test/index.test.js', + 'test/integration/export-image-loader/test/index.test.js', + 'test/integration/export-index-not-found-gsp/test/index.test.ts', + 'test/integration/export-intent/test/index.test.js', + 'test/integration/export-no-build/test/index.test.js', + 'test/integration/export-progress-status-message/test/index.test.js', + 'test/integration/export-subfolders/test/index.test.js', + 'test/integration/externalize-next-server/test/index.test.js', + 'test/integration/externals-esm-loose/test/index.test.js', + 'test/integration/externals-esm/test/index.test.js', + 'test/integration/fallback-false-rewrite/test/index.test.js', + 'test/integration/fallback-modules/test/index.test.js', + 'test/integration/fallback-route-params/test/index.test.js', + 'test/integration/fetch-polyfill-ky-universal/test/index.test.js', + 'test/integration/fetch-polyfill/test/index.test.js', + 'test/integration/file-serving/test/index.test.js', + 'test/integration/filesystempublicroutes/test/index.test.js', + 'test/integration/firebase-grpc/test/index.test.js', + 'test/integration/font-optimization/test/index.test.js', + 'test/integration/future/test/index.test.js', + 'test/integration/getinitialprops/test/index.test.js', + 'test/integration/getserversideprops-export-error/test/index.test.js', + 'test/integration/getserversideprops-preview/test/index.test.js', + 'test/integration/gip-identifier/test/index.test.js', + 'test/integration/gsp-build-errors/test/index.test.js', + 'test/integration/gsp-extension/test/index.test.js', + 'test/integration/gssp-pageProps-merge/test/index.test.js', + 'test/integration/gssp-redirect-base-path/test/index.test.js', + 'test/integration/gssp-redirect-with-rewrites/test/index.test.js', + 'test/integration/gssp-redirect/test/index.test.js', + 'test/integration/handles-export-errors/test/index.test.js', + 'test/integration/hashbang/test/index.test.js', + 'test/integration/hydrate-then-render/test/index.test.js', + 'test/integration/hydration/test/index.test.js', + 'test/integration/i18n-support-base-path/test/index.test.js', + 'test/integration/i18n-support-catchall/test/index.test.js', + 'test/integration/i18n-support-custom-error/test/index.test.js', + 'test/integration/i18n-support-fallback-rewrite-legacy/test/index.test.js', + 'test/integration/i18n-support-fallback-rewrite/test/index.test.js', + 'test/integration/i18n-support-index-rewrite/test/index.test.js', + 'test/integration/i18n-support-same-page-hash-change/test/index.test.js', + 'test/integration/i18n-support/test/index.test.js', + 'test/integration/image-generation/test/index.test.ts', + 'test/integration/image-optimizer/test/content-disposition-type.test.ts', + 'test/integration/image-optimizer/test/index.test.ts', + 'test/integration/image-optimizer/test/minimum-cache-ttl.test.ts', + 'test/integration/image-optimizer/test/old-sharp.test.ts', + 'test/integration/image-optimizer/test/sharp.test.ts', + 'test/integration/image-optimizer/test/squoosh.test.ts', + 'test/integration/import-assertion/test/index.test.js', + 'test/integration/index-index/test/index.test.js', + 'test/integration/initial-ref/test/index.test.js', + 'test/integration/invalid-config-values/test/index.test.js', + 'test/integration/invalid-custom-routes/test/index.test.js', + 'test/integration/invalid-document-image-import/test/index.test.js', + 'test/integration/invalid-href/test/index.test.js', + 'test/integration/invalid-middleware-matchers/test/index.test.js', + 'test/integration/invalid-multi-match/test/index.test.js', + 'test/integration/invalid-page-automatic-static-optimization/test/index.test.js', + 'test/integration/invalid-revalidate-values/test/index.test.js', + 'test/integration/invalid-server-options/test/index.test.js', + 'test/integration/jsconfig-baseurl/test/index.test.js', + 'test/integration/jsconfig-empty/test/index.test.js', + 'test/integration/jsconfig-paths/test/index.test.js', + 'test/integration/jsconfig/test/index.test.js', + 'test/integration/json-serialize-original-error/test/index.test.js', + 'test/integration/legacy-ssg-methods-error/test/index.test.js', + 'test/integration/link-ref/test/index.test.js', + 'test/integration/link-with-encoding/test/index.test.js', + 'test/integration/link-with-multiple-child/test/index.test.js', + 'test/integration/link-without-router/test/index.test.js', + 'test/integration/middleware-build-errors/test/index.test.js', + 'test/integration/middleware-dev-errors/test/index.test.js', + 'test/integration/middleware-dev-update/test/index.test.js', + 'test/integration/middleware-overrides-node.js-api/test/index.test.ts', + 'test/integration/middleware-prefetch/tests/index.test.js', + 'test/integration/middleware-src/test/index.test.js', + 'test/integration/missing-document-component-error/test/index.test.js', + 'test/integration/mixed-ssg-serverprops-error/test/index.test.js', + 'test/integration/next-dynamic-css/test/index.test.js', + 'test/integration/next-dynamic-lazy-compilation/test/index.test.js', + 'test/integration/next-dynamic/test/index.test.js', + 'test/integration/next-image-legacy/asset-prefix/test/index.test.ts', + 'test/integration/next-image-legacy/base-path/test/index.test.ts', + 'test/integration/next-image-legacy/base-path/test/static.test.ts', + 'test/integration/next-image-legacy/basic/test/index.test.ts', + 'test/integration/next-image-legacy/custom-resolver/test/index.test.ts', + 'test/integration/next-image-legacy/default/test/index.test.ts', + 'test/integration/next-image-legacy/default/test/static.test.ts', + 'test/integration/next-image-legacy/image-from-node-modules/test/index.test.ts', + 'test/integration/next-image-legacy/no-intersection-observer-fallback/test/index.test.ts', + 'test/integration/next-image-legacy/noscript/test/index.test.ts', + 'test/integration/next-image-legacy/react-virtualized/test/index.test.ts', + 'test/integration/next-image-legacy/svgo-webpack/test/index.test.ts', + 'test/integration/next-image-legacy/trailing-slash/test/index.test.ts', + 'test/integration/next-image-legacy/typescript/test/index.test.ts', + 'test/integration/next-image-legacy/unicode/test/index.test.ts', + 'test/integration/next-image-legacy/unoptimized/test/index.test.ts', + 'test/integration/next-image-new/app-dir/test/index.test.ts', + 'test/integration/next-image-new/app-dir/test/static.test.ts', + 'test/integration/next-image-new/asset-prefix/test/index.test.js', + 'test/integration/next-image-new/base-path/test/index.test.js', + 'test/integration/next-image-new/base-path/test/static.test.js', + 'test/integration/next-image-new/both-basepath-trailingslash/test/index.test.ts', + 'test/integration/next-image-new/default/test/index.test.ts', + 'test/integration/next-image-new/default/test/static.test.ts', + 'test/integration/next-image-new/export-config/test/index.test.ts', + 'test/integration/next-image-new/image-from-node-modules/test/index.test.ts', + 'test/integration/next-image-new/invalid-image-import/test/index.test.ts', + 'test/integration/next-image-new/loader-config-edge-runtime/test/index.test.ts', + 'test/integration/next-image-new/loader-config/test/index.test.ts', + 'test/integration/next-image-new/react-virtualized/test/index.test.ts', + 'test/integration/next-image-new/svgo-webpack/test/index.test.ts', + 'test/integration/next-image-new/trailing-slash/test/index.test.ts', + 'test/integration/next-image-new/typescript/test/index.test.ts', + 'test/integration/next-image-new/unicode/test/index.test.ts', + 'test/integration/next-image-new/unoptimized/test/index.test.ts', + 'test/integration/no-duplicate-compile-error/test/index.test.js', + 'test/integration/no-op-export/test/index.test.js', + 'test/integration/no-override-next-props/test/index.test.js', + 'test/integration/no-page-props/test/index.test.js', + 'test/integration/node-fetch-keep-alive/test/index.test.js', + 'test/integration/non-next-dist-exclude/test/index.test.js', + 'test/integration/non-standard-node-env-warning/test/index.test.js', + 'test/integration/not-found-revalidate/test/index.test.js', + 'test/integration/nullish-config/test/index.test.js', + 'test/integration/numeric-sep/test/index.test.js', + 'test/integration/ondemand/test/index.test.js', + 'test/integration/optional-chaining-nullish-coalescing/test/index.test.js', + 'test/integration/page-config/test/index.test.js', + 'test/integration/page-extensions/test/index.test.js', + 'test/integration/polyfilling-minimal/test/index.test.js', + 'test/integration/polyfills/test/index.test.js', + 'test/integration/port-env-var/test/index.test.js', + 'test/integration/preload-viewport/test/index.test.js', + 'test/integration/prerender-fallback-encoding/test/index.test.js', + 'test/integration/prerender-invalid-catchall-params/test/index.test.js', + 'test/integration/prerender-invalid-paths/test/index.test.js', + 'test/integration/prerender-legacy/test/index.test.js', + 'test/integration/prerender-no-revalidate/test/index.test.js', + 'test/integration/prerender-preview/test/index.test.js', + 'test/integration/prerender-revalidate/test/index.test.js', + 'test/integration/prerender/test/index.test.js', + 'test/integration/preview-fallback/test/index.test.js', + 'test/integration/process-env-stub/test/index.test.js', + 'test/integration/production-browser-sourcemaps/test/index.test.js', + 'test/integration/production-build-dir/test/index.test.js', + 'test/integration/production-config/test/index.test.js', + 'test/integration/production-nav/test/index.test.js', + 'test/integration/production-start-no-build/test/index.test.js', + 'test/integration/production/test/index.test.js', + 'test/integration/project-dir-delete/index.test.ts', + 'test/integration/query-with-encoding/test/index.test.js', + 'test/integration/re-export-all-exports-from-page-disallowed/test/index.test.js', + 'test/integration/react-18/test/index.test.js', + 'test/integration/react-profiling-mode/test/index.test.js', + 'test/integration/react-streaming/test/index.test.js', + 'test/integration/read-only-source-hmr/test/index.test.js', + 'test/integration/relay-analytics-disabled/test/index.test.js', + 'test/integration/relay-analytics/test/index.test.js', + 'test/integration/relay-graphql-swc-multi-project/test/index.test.js', + 'test/integration/relay-graphql-swc-single-project/test/index.test.js', + 'test/integration/render-error-on-module-error/test/index.test.js', + 'test/integration/render-error-on-top-level-error/with-get-initial-props/test/index.test.js', + 'test/integration/render-error-on-top-level-error/without-get-initial-props/test/index.test.js', + 'test/integration/repeated-slashes/test/index.test.js', + 'test/integration/required-server-files-ssr-404/test/index.test.js', + 'test/integration/revalidate-as-path/test/index.test.js', + 'test/integration/rewrite-with-browser-history/test/index.test.js', + 'test/integration/rewrites-client-resolving/test/index.test.js', + 'test/integration/rewrites-destination-query-array/test/index.test.js', + 'test/integration/rewrites-has-condition/test/index.test.js', + 'test/integration/rewrites-manual-href-as/test/index.test.js', + 'test/integration/root-optional-revalidate/test/index.test.js', + 'test/integration/route-index/test/index.test.js', + 'test/integration/route-indexes/test/index.test.js', + 'test/integration/route-load-cancel-css/test/index.test.js', + 'test/integration/route-load-cancel/test/index.test.js', + 'test/integration/router-hash-navigation/test/index.test.js', + 'test/integration/router-is-ready-app-gip/test/index.test.js', + 'test/integration/router-is-ready/test/index.test.js', + 'test/integration/router-prefetch/test/index.test.js', + 'test/integration/router-rerender/test/index.test.js', + 'test/integration/script-loader/test/index.test.js', + 'test/integration/scroll-back-restoration/test/index.test.js', + 'test/integration/scroll-forward-restoration/test/index.test.js', + 'test/integration/scss-modules/test/index.test.js', + 'test/integration/scss/test/group-1.test.js', + 'test/integration/scss/test/group-2.test.js', + 'test/integration/server-asset-modules/test/index.test.js', + 'test/integration/server-side-dev-errors/test/index.test.js', + 'test/integration/src-dir-support-double-dir/test/index.test.js', + 'test/integration/src-dir-support/test/index.test.js', + 'test/integration/ssg-data-404/test/index.test.js', + 'test/integration/ssg-dynamic-routes-404-page/test/index.test.js', + 'test/integration/static-404/test/index.test.js', + 'test/integration/static-page-name/test/index.test.js', + 'test/integration/styled-jsx-plugin/test/index.test.js', + 'test/integration/telemetry/test/config.test.js', + 'test/integration/telemetry/test/index.test.js', + 'test/integration/telemetry/test/page-features.test.js', + 'test/integration/trailing-slash-dist/test/index.test.js', + 'test/integration/trailing-slashes-href-resolving/test/index.test.js', + 'test/integration/trailing-slashes-rewrite/test/index.test.js', + 'test/integration/trailing-slashes/test/index.test.js', + 'test/integration/tsconfig-verifier/test/index.test.js', + 'test/integration/turbopack-unsupported-log/index.test.ts', + 'test/integration/turbotrace-with-webpack-worker/test/index.test.js', + 'test/integration/typeof-window-replace/test/index.test.js', + 'test/integration/typescript-app-type-declarations/test/index.test.js', + 'test/integration/typescript-baseurl/test/index.test.js', + 'test/integration/typescript-custom-tsconfig/test/index.test.js', + 'test/integration/typescript-external-dir/project/test/index.test.js', + 'test/integration/typescript-filtered-files/test/index.test.js', + 'test/integration/typescript-hmr/test/index.test.js', + 'test/integration/typescript-ignore-errors/test/index.test.js', + 'test/integration/typescript-only-remove-type-imports/test/index.test.js', + 'test/integration/typescript-paths/test/index.test.js', + 'test/integration/typescript-version-warning/test/index.test.js', + 'test/integration/typescript-workspaces-paths/packages/www/test/index.test.js', + 'test/integration/typescript/test/index.test.js', + 'test/integration/undefined-webpack-config/test/index.test.js', + 'test/integration/url-imports/test/index.test.js', + 'test/integration/url/test/index.test.js', + 'test/integration/webpack-config-extensionalias/test/index.test.js', + 'test/integration/webpack-config-mainjs/test/index.test.js', + 'test/integration/webpack-require-hook/test/index.test.js', + 'test/integration/with-electron/test/index.test.js', + 'test/integration/with-router/test/index.test.js', + 'test/integration/worker-webpack5/test/index.test.js', + 'test/production/app-dir-edge-runtime-with-wasm/index.test.ts', + 'test/production/app-dir-hide-suppressed-error-during-next-export/index.test.ts', + 'test/production/app-dir-prefetch-non-iso-url/index.test.ts', + 'test/production/app-dir/app-only-flag/app-only-flag.test.ts', + 'test/production/app-dir/revalidate/revalidate.test.ts', + 'test/production/ci-missing-typescript-deps/index.test.ts', + 'test/production/custom-error-500/index.test.ts', + 'test/production/custom-server/custom-server.test.ts', + 'test/production/dependencies-can-use-env-vars-in-middlewares/index.test.ts', + 'test/production/disable-fallback-polyfills/index.test.ts', + 'test/production/edge-config-validations/index.test.ts', + 'test/production/edge-runtime-is-addressable/index.test.ts', + 'test/production/emit-decorator-metadata/index.test.ts', + 'test/production/enoent-during-require/index.test.ts', + 'test/production/escheck-output/index.test.ts', + 'test/production/eslint-plugin-deps/index.test.ts', + 'test/production/export/index.test.ts', + 'test/production/exported-runtimes-value-validation/index.test.ts', + 'test/production/fallback-export-error/index.test.ts', + 'test/production/fatal-render-errror/index.test.ts', + 'test/production/generate-middleware-source-maps/index.test.ts', + 'test/production/jest/index.test.ts', + 'test/production/jest/new-link-behavior.test.ts', + 'test/production/jest/relay/relay-jest.test.ts', + 'test/production/jest/remove-react-properties/remove-react-properties-jest.test.ts', + 'test/production/jest/transpile-packages.test.ts', + 'test/production/middleware-environment-variables-in-node-server-reflect-the-usage-inference/index.test.ts', + 'test/production/middleware-typescript/test/index.test.ts', + 'test/production/next-font/babel-unsupported.test.ts', + 'test/production/next-font/telemetry-old.test.ts', + 'test/production/next-font/telemetry.test.ts', + 'test/production/pnpm-support/index.test.ts', + 'test/production/postcss-plugin-config-as-string/index.test.ts', + 'test/production/prerender-prefetch/index.test.ts', + 'test/production/reading-request-body-in-middleware/index.test.ts', + 'test/production/standalone-mode/metadata/index.test.ts', + 'test/production/standalone-mode/optimizecss/index.test.ts', + 'test/production/standalone-mode/required-server-files/required-server-files-app.test.ts', + 'test/production/standalone-mode/required-server-files/required-server-files-i18n.test.ts', + 'test/production/standalone-mode/required-server-files/required-server-files.test.ts', + 'test/production/standalone-mode/response-cache/index.test.ts', + 'test/production/standalone-mode/type-module/index.test.ts', + 'test/production/supports-module-resolution-nodenext/supports-moduleresolution-nodenext.test.ts', + 'test/production/typescript-basic/index.test.ts', + 'test/unit/accept-headers.test.ts', + 'test/unit/babel-plugin-next-page-config.test.ts', + 'test/unit/babel-plugin-next-ssg-transform.test.ts', + 'test/unit/cli.test.ts', + 'test/unit/cssnano-simple/cssnano-preset-simple/issue-1.test.ts', + 'test/unit/cssnano-simple/cssnano-preset-simple/plugin-config.test.ts', + 'test/unit/cssnano-simple/cssnano-preset-simple/property-sorting.test.ts', + 'test/unit/cssnano-simple/cssnano-simple/basic.test.ts', + 'test/unit/cssnano-simple/cssnano-simple/exclude-all.test.ts', + 'test/unit/cssnano-simple/cssnano-simple/plugin-config.test.ts', + 'test/unit/eslint-plugin-next/google-font-display.test.ts', + 'test/unit/eslint-plugin-next/google-font-preconnect.test.ts', + 'test/unit/eslint-plugin-next/index.test.ts', + 'test/unit/eslint-plugin-next/inline-script-id.test.ts', + 'test/unit/eslint-plugin-next/next-script-for-ga.test.ts', + 'test/unit/eslint-plugin-next/no-assign-module-variable.test.ts', + 'test/unit/eslint-plugin-next/no-before-interactive-script-outside-document.test.ts', + 'test/unit/eslint-plugin-next/no-css-tags.test.ts', + 'test/unit/eslint-plugin-next/no-document-import-in-page.test.ts', + 'test/unit/eslint-plugin-next/no-duplicate-head.test.ts', + 'test/unit/eslint-plugin-next/no-head-element.test.ts', + 'test/unit/eslint-plugin-next/no-head-import-in-document.test.ts', + 'test/unit/eslint-plugin-next/no-html-link-for-pages.test.ts', + 'test/unit/eslint-plugin-next/no-img-element.test.ts', + 'test/unit/eslint-plugin-next/no-page-custom-font.test.ts', + 'test/unit/eslint-plugin-next/no-script-component-in-head.test.ts', + 'test/unit/eslint-plugin-next/no-styled-jsx-in-document.test.ts', + 'test/unit/eslint-plugin-next/no-sync-scripts.test.ts', + 'test/unit/eslint-plugin-next/no-title-in-document-head.test.ts', + 'test/unit/eslint-plugin-next/no-typos.test.ts', + 'test/unit/eslint-plugin-next/no-unwanted-polyfillio.test.ts', + 'test/unit/esm-interpolate/esm-interpolate.test.tsx', + 'test/unit/find-config.test.ts', + 'test/unit/find-page-file.test.ts', + 'test/unit/get-node-options-without-inspect.test.ts', + 'test/unit/get-page-static-infos.test.ts', + 'test/unit/get-project-dir.test.ts', + 'test/unit/getDisplayName.test.ts', + 'test/unit/htmlescape.test.ts', + 'test/unit/image-optimizer/detect-content-type.test.ts', + 'test/unit/image-optimizer/get-max-age.test.ts', + 'test/unit/image-optimizer/match-remote-pattern.test.ts', + 'test/unit/incremental-cache/file-system-cache.test.ts', + 'test/unit/infer-get-server-side-props-type.test.ts', + 'test/unit/infer-get-static-props.test.ts', + 'test/unit/is-equal-node.unit.test.ts', + 'test/unit/is-serializable-props.test.ts', + 'test/unit/isolated/config.test.ts', + 'test/unit/isolated/require-page.test.ts', + 'test/unit/jest-next-swc.test.ts', + 'test/unit/link-rendering.test.ts', + 'test/unit/link-warnings.test.tsx', + 'test/unit/loadGetInitialProps.test.ts', + 'test/unit/mitt.test.ts', + 'test/unit/next-babel-loader-dev.test.ts', + 'test/unit/next-babel-loader-prod.test.ts', + 'test/unit/next-babel.test.ts', + 'test/unit/next-dynamic.test.tsx', + 'test/unit/next-head-rendering.test.ts', + 'test/unit/next-image-legacy.test.ts', + 'test/unit/next-image-new.test.ts', + 'test/unit/next-server-utils.test.ts', + 'test/unit/next-swc.test.ts', + 'test/unit/oxford-comma.test.ts', + 'test/unit/page-route-sorter.test.ts', + 'test/unit/parse-page-static-info.test.ts', + 'test/unit/parse-relative-url.test.ts', + 'test/unit/phaseConstants.test.ts', + 'test/unit/preserve-process-env.test.ts', + 'test/unit/recursive-copy.test.ts', + 'test/unit/recursive-delete.test.ts', + 'test/unit/recursive-readdir.test.ts', + 'test/unit/router-add-base-path.test.ts', + 'test/unit/split-cookies-string.test.ts', + 'test/unit/validate-url.test.ts', + 'test/unit/warn-removed-experimental-config.test.ts', + 'test/unit/web-runtime/next-response-cookies.test.ts', + 'test/unit/web-runtime/next-response.test.ts', + 'test/unit/web-runtime/next-server-node.test.ts', + 'test/unit/web-runtime/next-url.test.ts', + 'test/unit/web-runtime/user-agent.test.ts', + 'test/unit/webpack-config-overrides.test.ts', + 'test/unit/write-app-declarations.test.ts', +] + +module.exports = { + enabledTests, + disabledTests, +} diff --git a/packages/next-swc/crates/next-dev-tests/tests-manifest.json b/packages/next-swc/crates/next-dev-tests/tests-manifest.json deleted file mode 100644 index 99b49fe7f399..000000000000 --- a/packages/next-swc/crates/next-dev-tests/tests-manifest.json +++ /dev/null @@ -1,7 +0,0 @@ -[ - "test/development/acceptance-app/dynamic-error.test.ts", - "test/development/basic/legacy-decorators.test.ts", - "test/integration/plugin-mdx-rs/test/index.test.js", - "test/e2e/app-dir/underscore-ignore-app-paths/underscore-ignore-app-paths.test.ts", - "test/e2e/postcss-config-cjs/index.test.ts" -] diff --git a/run-tests.js b/run-tests.js index aeaf3d9e887d..90df09fb911f 100644 --- a/run-tests.js +++ b/run-tests.js @@ -15,7 +15,7 @@ const exec = promisify(execOrig) // Try to read an external array-based json to filter tests to be executed. // If process.argv contains a test to be executed, this'll append it to the list. const externalTestsFilterLists = process.env.NEXT_EXTERNAL_TESTS_FILTERS - ? require(process.env.NEXT_EXTERNAL_TESTS_FILTERS) + ? require(process.env.NEXT_EXTERNAL_TESTS_FILTERS).enabledTests : [] const timings = [] const DEFAULT_NUM_RETRIES = os.platform() === 'win32' ? 2 : 1