diff --git a/package.json b/package.json index 28cf51b6450..f175b2d91f2 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "test:diff": "pnpm --filter \"@rspack/*\" test:diff", "test:hot": "pnpm --filter \"@rspack/*\" test:hot", "test:unit": "pnpm --filter \"@rspack/*\" test", - "test:e2e": "pnpm --filter \"@rspack-e2e/*\" test", + "test:e2e": "pnpm --filter \"e2e-test\" test", "test:ci": "cross-env NODE_OPTIONS=--max_old_space_size=8192 pnpm run build:js && pnpm run test:unit && npm run test:plugin && pnpm test:webpack", "test:plugin": "pnpm --filter \"plugin-test\" test", "test:webpack": "pnpm --filter \"webpack-test\" test:metric", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7dd80c2a362..e54bf8edaba 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -694,6 +694,78 @@ importers: specifier: 7.2.3 version: 7.2.3 + tests/e2e: + devDependencies: + '@babel/core': + specifier: ^7.22.20 + version: 7.24.4 + '@babel/preset-react': + specifier: ^7.22.15 + version: 7.25.9(@babel/core@7.24.4) + '@playwright/test': + specifier: 1.47.0 + version: 1.47.0 + '@rspack/core': + specifier: workspace:* + version: link:../../packages/rspack + '@rspack/dev-server': + specifier: 1.0.9 + version: 1.0.9(@rspack/core@packages+rspack)(@types/express@4.17.21)(webpack-cli@5.1.4(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.7.40(@swc/helpers@0.5.13))(webpack-cli@5.1.4(webpack@5.94.0))) + '@rspack/plugin-react-refresh': + specifier: 1.0.0 + version: 1.0.0(react-refresh@0.14.0) + '@swc/helpers': + specifier: 0.5.13 + version: 0.5.13 + '@types/fs-extra': + specifier: 11.0.4 + version: 11.0.4 + babel-loader: + specifier: ^9.1.3 + version: 9.1.3(@babel/core@7.24.4)(webpack@5.94.0(@swc/core@1.7.40(@swc/helpers@0.5.13))(webpack-cli@5.1.4(webpack@5.94.0))) + core-js: + specifier: 3.38.1 + version: 3.38.1 + css-loader: + specifier: ^6.11.0 + version: 6.11.0(@rspack/core@packages+rspack)(webpack@5.94.0(@swc/core@1.7.40(@swc/helpers@0.5.13))(webpack-cli@5.1.4(webpack@5.94.0))) + fs-extra: + specifier: ^11.2.0 + version: 11.2.0 + postcss: + specifier: ^8.4.21 + version: 8.4.47 + postcss-loader: + specifier: ^8.0.0 + version: 8.1.1(@rspack/core@packages+rspack)(postcss@8.4.47)(typescript@5.6.3)(webpack@5.94.0(@swc/core@1.7.40(@swc/helpers@0.5.13))(webpack-cli@5.1.4(webpack@5.94.0))) + react: + specifier: ^18.2.0 + version: 18.3.1 + react-dom: + specifier: ^18.2.0 + version: 18.3.1(react@18.3.1) + react-refresh: + specifier: ^0.14.0 + version: 0.14.0 + tailwindcss: + specifier: ^3.3.0 + version: 3.4.14(ts-node@10.9.2(@swc/core@1.7.40(@swc/helpers@0.5.13))(@types/node@20.12.7)(typescript@5.6.3)) + typescript: + specifier: ^5.6.3 + version: 5.6.3 + vue: + specifier: ^3.4.21 + version: 3.5.12(typescript@5.6.3) + vue-loader: + specifier: ^17.3.1 + version: 17.4.2(vue@3.5.12(typescript@5.6.3))(webpack@5.94.0(@swc/core@1.7.40(@swc/helpers@0.5.13))(webpack-cli@5.1.4(webpack@5.94.0))) + webpack-dev-server: + specifier: 5.0.4 + version: 5.0.4(webpack-cli@5.1.4(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.7.40(@swc/helpers@0.5.13))(webpack-cli@5.1.4(webpack@5.94.0))) + ws: + specifier: ^8.16.0 + version: 8.18.0 + tests/plugin-test: devDependencies: '@rspack/core': @@ -2526,6 +2598,11 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} + '@playwright/test@1.47.0': + resolution: {integrity: sha512-SgAdlSwYVpToI4e/IH19IHHWvoijAYH5hu2MWSXptRypLSnzj51PcGD+rsOXFayde4P9ZLi+loXVwArg6IUkCA==} + engines: {node: '>=18'} + hasBin: true + '@pnpm/cli-meta@5.0.1': resolution: {integrity: sha512-s7rVArn3s78w2ZDWC2/NzMaYBzq39QBmo1BQ4+qq1liX+ltSErDyAx3M/wvvJQgc+Ur3dZJYuc9t96roPnW3XQ==} engines: {node: '>=16.14'} @@ -5491,6 +5568,11 @@ packages: fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + fsevents@2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -7423,6 +7505,16 @@ packages: resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==} engines: {node: '>=14.16'} + playwright-core@1.47.0: + resolution: {integrity: sha512-1DyHT8OqkcfCkYUD9zzUTfg7EfTd+6a8MkD/NWOvjo0u/SCNd5YmY/lJwFvUZOxJbWNds+ei7ic2+R/cRz/PDg==} + engines: {node: '>=18'} + hasBin: true + + playwright@1.47.0: + resolution: {integrity: sha512-jOWiRq2pdNAX/mwLiwFYnPHpEZ4rM+fRSQpRHwEwZlP2PUANvL3+aJOF/bvISMhFD30rqMxUB4RJx9aQbfh4Ww==} + engines: {node: '>=18'} + hasBin: true + plimit-lit@1.6.1: resolution: {integrity: sha512-B7+VDyb8Tl6oMJT9oSO2CW8XC/T4UcJGrwOVoNGwOQsQYhlpfajmrMj5xeejqaASq3V/EqThyOeATEOMuSEXiA==} engines: {node: '>=12'} @@ -9934,17 +10026,17 @@ snapshots: '@babel/core@7.24.4': dependencies: '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.24.7 + '@babel/code-frame': 7.26.2 + '@babel/generator': 7.26.2 '@babel/helper-compilation-targets': 7.24.7 '@babel/helper-module-transforms': 7.24.7(@babel/core@7.24.4) '@babel/helpers': 7.24.4 - '@babel/parser': 7.25.8 - '@babel/template': 7.24.7 - '@babel/traverse': 7.24.7 - '@babel/types': 7.25.8 + '@babel/parser': 7.26.2 + '@babel/template': 7.25.9 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.0 convert-source-map: 2.0.0 - debug: 4.3.6 + debug: 4.3.7 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -9984,7 +10076,7 @@ snapshots: '@babel/helper-compilation-targets@7.24.7': dependencies: '@babel/compat-data': 7.24.7 - '@babel/helper-validator-option': 7.24.7 + '@babel/helper-validator-option': 7.25.9 browserslist: 4.24.0 lru-cache: 5.1.1 semver: 6.3.1 @@ -10020,10 +10112,10 @@ snapshots: dependencies: '@babel/core': 7.24.4 '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-module-imports': 7.24.7 + '@babel/helper-module-imports': 7.25.9 '@babel/helper-simple-access': 7.24.7 '@babel/helper-split-export-declaration': 7.24.7 - '@babel/helper-validator-identifier': 7.25.7 + '@babel/helper-validator-identifier': 7.25.9 transitivePeerDependencies: - supports-color @@ -10033,8 +10125,8 @@ snapshots: '@babel/helper-simple-access@7.24.7': dependencies: - '@babel/traverse': 7.24.7 - '@babel/types': 7.25.8 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.0 transitivePeerDependencies: - supports-color @@ -10064,9 +10156,9 @@ snapshots: '@babel/helpers@7.24.4': dependencies: - '@babel/template': 7.24.7 - '@babel/traverse': 7.24.7 - '@babel/types': 7.25.8 + '@babel/template': 7.25.9 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.0 transitivePeerDependencies: - supports-color @@ -10083,7 +10175,7 @@ snapshots: '@babel/parser@7.25.8': dependencies: - '@babel/types': 7.25.8 + '@babel/types': 7.26.0 '@babel/parser@7.26.2': dependencies: @@ -11430,6 +11522,10 @@ snapshots: '@pkgjs/parseargs@0.11.0': optional: true + '@playwright/test@1.47.0': + dependencies: + playwright: 1.47.0 + '@pnpm/cli-meta@5.0.1': dependencies: '@pnpm/types': 9.1.0 @@ -12278,7 +12374,7 @@ snapshots: '@swc/helpers@0.5.13': dependencies: - tslib: 2.6.2 + tslib: 2.8.0 '@swc/jest@0.2.36(@swc/core@1.4.0(@swc/helpers@0.5.13))': dependencies: @@ -12616,7 +12712,7 @@ snapshots: '@vue/compiler-core@3.5.12': dependencies: - '@babel/parser': 7.25.8 + '@babel/parser': 7.26.2 '@vue/shared': 3.5.12 entities: 4.5.0 estree-walker: 2.0.2 @@ -12805,7 +12901,7 @@ snapshots: agent-base@6.0.2: dependencies: - debug: 4.3.6 + debug: 4.3.7 transitivePeerDependencies: - supports-color @@ -14913,6 +15009,9 @@ snapshots: fs.realpath@1.0.0: {} + fsevents@2.3.2: + optional: true + fsevents@2.3.3: optional: true @@ -15363,7 +15462,7 @@ snapshots: dependencies: '@tootallnate/once': 2.0.0 agent-base: 6.0.2 - debug: 4.3.6 + debug: 4.3.7 transitivePeerDependencies: - supports-color @@ -15399,7 +15498,7 @@ snapshots: https-proxy-agent@5.0.1: dependencies: agent-base: 6.0.2 - debug: 4.3.6 + debug: 4.3.7 transitivePeerDependencies: - supports-color @@ -17400,6 +17499,14 @@ snapshots: dependencies: find-up: 6.3.0 + playwright-core@1.47.0: {} + + playwright@1.47.0: + dependencies: + playwright-core: 1.47.0 + optionalDependencies: + fsevents: 2.3.2 + plimit-lit@1.6.1: dependencies: queue-lit: 1.5.2 @@ -17496,7 +17603,7 @@ snapshots: postcss@8.4.47: dependencies: nanoid: 3.3.7 - picocolors: 1.1.0 + picocolors: 1.1.1 source-map-js: 1.2.1 preact@10.23.2: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 8edfd83ae83..c3b118d73fa 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -9,6 +9,7 @@ packages: - "crates/rspack_fs_node" - "examples/**" - "!examples/three" + - "tests/e2e" - "tests/webpack-examples" - "tests/webpack-test" - "tests/plugin-test" diff --git a/tests/e2e/package.json b/tests/e2e/package.json index 037d0d85e0f..4a590b7514d 100644 --- a/tests/e2e/package.json +++ b/tests/e2e/package.json @@ -1,5 +1,5 @@ { - "name": "rspack-e2e", + "name": "e2e-test", "private": true, "version": "0.1.8", "scripts": {