From 4d885dbfeafabba8ad2bd1ebc6124294fb1a6d2d Mon Sep 17 00:00:00 2001 From: Arianrhod Sandlot Date: Wed, 27 Sep 2023 10:01:40 +0800 Subject: [PATCH] test: add some basic test cases --- .gitignore | 2 +- package.json | 1 + pnpm-lock.yaml | 28 +- .../common/cloud-service-login-button.tsx | 1 + .../game-entries-grid/game-entry-button.tsx | 2 +- src/views/components/home-screen/index.tsx | 2 +- .../components/home-screen/top-bar/index.tsx | 5 +- .../top-bar/system-navigation-item.tsx | 1 + .../home-screen/top-bar/top-bar-button.tsx | 3 +- .../cloud-service/directory-tree-node.tsx | 5 +- .../setup-wizard/onedrive-button/index.tsx | 2 +- tests/e2e/homepage/homepage.spec.ts | 61 + tests/e2e/playwright.config.ts | 10 +- tests/e2e/setup-wizard/single-rom.spec.ts | 6 +- ...4b837b1e8d41e7bd6a618f4142be50bf84ae6.json | 1 + ...200c1e526f3f0d8047c4df9b0cf6106a5e5d3.json | 1 + ...af0724db8d494c9ee11087bd35ea5434bc22d.json | 16 + ...7be3d19cbb0ce38a9ec1ebf2a249e79b46179.json | 1 + ...d129d46adb832a7d9973b2b63274ca1ee9938.json | 1 + ...891894c878a6c6f14107a57a88a849353c71f.json | 1 + ...5e02c61fb747041df6fc5f9b841ddf6650a11.json | 1 + ...50ccb9b89e9bf79d668fd89c0d5c269723f9bc.zip | Bin 0 -> 57001 bytes ...b4928ccaf91aa1fe5d0cb3f2708eb1659c87b.json | 1 + ...6326d68b04efb61d33e15108e2585efc87a4b.json | 1 + ...033b15305d72111fb3fefdca00fcdca17468f.json | 1 + ...d3d6ae7838e8db38e1e56d968dd7f93d34b1a2.bin | Bin 0 -> 1892 bytes ...83d5909d8d963148b00a340ba9aaa45db2328e.png | Bin 0 -> 1903 bytes ...bdcd469fe6630cef4ef608a79d050ae9e0135.json | 1 + ...9dd0561d90ad84970eb51428fe17917b42829.json | 1 + ...fee01b11f7b290eace4dfb4906219acdabdff.json | 1 + ...f1a8c22de22ce75e27b4b85e585da79d860cc.json | 16 + ...52e278bb2f648acd7e8abb254a9ab65bf1dfa.json | 1 + ...2a0a465ea52b2b11a4e8387476409189eef42.json | 1 + ...7dfc39214369c61a62287f9a761da8e4e634e.json | 1 + ...7781c95964cd76af7eaf337de09aaca1d38da.json | 1 + ...f8016e9efd779380244b7c9392cc96e5c4366.json | 1 + ...721986418320e00dc7b211e2317ea7bcdbb11.json | 1 + ...c6176b153f2161ca15b972a613ea07ddc58b7.json | 1 + ...7dad295b3e77e6a3b245b3bc1ba5e55936e80.json | 1 + ...5c3a87ec788ab628e4e9cc90bde1bf03c4475.json | 1 + ...2e80d65a81ee9c68f21d08a42bd4d2ec2bf18.json | 1 + ...ce2d0c5493c513e8f434db30365d9242afbe9.json | 1 + ...d90d21129a0d665574567128a0367991584e2.json | 1 + ...1b106d9ffba7ba31a1fbadadb722a05b12c0e.json | 1 + ...ee2f479e485a1a77b73cec24493ed0ace336a.json | 1 + ...3dfcd9a3b26382013502fa550eb4a23cafc65.json | 1 + tests/fixtures/hars/onedrive.har/onedrive.har | 2453 +++++++++++++++++ vite.config.ts | 2 +- 48 files changed, 2619 insertions(+), 24 deletions(-) create mode 100644 tests/e2e/homepage/homepage.spec.ts create mode 100644 tests/fixtures/hars/onedrive.har/1884b837b1e8d41e7bd6a618f4142be50bf84ae6.json create mode 100644 tests/fixtures/hars/onedrive.har/196200c1e526f3f0d8047c4df9b0cf6106a5e5d3.json create mode 100644 tests/fixtures/hars/onedrive.har/1bcaf0724db8d494c9ee11087bd35ea5434bc22d.json create mode 100644 tests/fixtures/hars/onedrive.har/2d47be3d19cbb0ce38a9ec1ebf2a249e79b46179.json create mode 100644 tests/fixtures/hars/onedrive.har/3a6d129d46adb832a7d9973b2b63274ca1ee9938.json create mode 100644 tests/fixtures/hars/onedrive.har/42b891894c878a6c6f14107a57a88a849353c71f.json create mode 100644 tests/fixtures/hars/onedrive.har/4745e02c61fb747041df6fc5f9b841ddf6650a11.json create mode 100644 tests/fixtures/hars/onedrive.har/4950ccb9b89e9bf79d668fd89c0d5c269723f9bc.zip create mode 100644 tests/fixtures/hars/onedrive.har/4f7b4928ccaf91aa1fe5d0cb3f2708eb1659c87b.json create mode 100644 tests/fixtures/hars/onedrive.har/6316326d68b04efb61d33e15108e2585efc87a4b.json create mode 100644 tests/fixtures/hars/onedrive.har/781033b15305d72111fb3fefdca00fcdca17468f.json create mode 100644 tests/fixtures/hars/onedrive.har/7cd3d6ae7838e8db38e1e56d968dd7f93d34b1a2.bin create mode 100644 tests/fixtures/hars/onedrive.har/7f83d5909d8d963148b00a340ba9aaa45db2328e.png create mode 100644 tests/fixtures/hars/onedrive.har/813bdcd469fe6630cef4ef608a79d050ae9e0135.json create mode 100644 tests/fixtures/hars/onedrive.har/9659dd0561d90ad84970eb51428fe17917b42829.json create mode 100644 tests/fixtures/hars/onedrive.har/9b5fee01b11f7b290eace4dfb4906219acdabdff.json create mode 100644 tests/fixtures/hars/onedrive.har/9cef1a8c22de22ce75e27b4b85e585da79d860cc.json create mode 100644 tests/fixtures/hars/onedrive.har/9f652e278bb2f648acd7e8abb254a9ab65bf1dfa.json create mode 100644 tests/fixtures/hars/onedrive.har/a0d2a0a465ea52b2b11a4e8387476409189eef42.json create mode 100644 tests/fixtures/hars/onedrive.har/a387dfc39214369c61a62287f9a761da8e4e634e.json create mode 100644 tests/fixtures/hars/onedrive.har/a3e7781c95964cd76af7eaf337de09aaca1d38da.json create mode 100644 tests/fixtures/hars/onedrive.har/ab1f8016e9efd779380244b7c9392cc96e5c4366.json create mode 100644 tests/fixtures/hars/onedrive.har/b8a721986418320e00dc7b211e2317ea7bcdbb11.json create mode 100644 tests/fixtures/hars/onedrive.har/c46c6176b153f2161ca15b972a613ea07ddc58b7.json create mode 100644 tests/fixtures/hars/onedrive.har/c5a7dad295b3e77e6a3b245b3bc1ba5e55936e80.json create mode 100644 tests/fixtures/hars/onedrive.har/c895c3a87ec788ab628e4e9cc90bde1bf03c4475.json create mode 100644 tests/fixtures/hars/onedrive.har/d9b2e80d65a81ee9c68f21d08a42bd4d2ec2bf18.json create mode 100644 tests/fixtures/hars/onedrive.har/e97ce2d0c5493c513e8f434db30365d9242afbe9.json create mode 100644 tests/fixtures/hars/onedrive.har/eddd90d21129a0d665574567128a0367991584e2.json create mode 100644 tests/fixtures/hars/onedrive.har/eef1b106d9ffba7ba31a1fbadadb722a05b12c0e.json create mode 100644 tests/fixtures/hars/onedrive.har/faaee2f479e485a1a77b73cec24493ed0ace336a.json create mode 100644 tests/fixtures/hars/onedrive.har/ff63dfcd9a3b26382013502fa550eb4a23cafc65.json create mode 100644 tests/fixtures/hars/onedrive.har/onedrive.har diff --git a/.gitignore b/.gitignore index dc9e6f8..c9f2580 100644 --- a/.gitignore +++ b/.gitignore @@ -2,5 +2,5 @@ dev-dist dist node_modules test-results -tests/fixtures +tests/fixtures/roms vendors diff --git a/package.json b/package.json index 80e1c3c..da676ad 100644 --- a/package.json +++ b/package.json @@ -61,6 +61,7 @@ "@types/ini": "1.3.31", "@types/jquery": "3.5.19", "@types/lodash-es": "4.17.9", + "@types/node": "20.7.0", "@types/path-browserify": "1.0.0", "@types/react": "18.2.22", "@types/react-dom": "18.2.7", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8b2f864..cd3f68c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -148,6 +148,9 @@ devDependencies: '@types/lodash-es': specifier: 4.17.9 version: 4.17.9 + '@types/node': + specifier: 20.7.0 + version: 20.7.0 '@types/path-browserify': specifier: 1.0.0 version: 1.0.0 @@ -189,7 +192,7 @@ devDependencies: version: 5.2.2 vite: specifier: 4.4.9 - version: 4.4.9(sass@1.68.0) + version: 4.4.9(@types/node@20.7.0)(sass@1.68.0) vite-plugin-pwa: specifier: 0.16.5 version: 0.16.5(vite@4.4.9)(workbox-build@7.0.0)(workbox-window@7.0.0) @@ -2380,7 +2383,7 @@ packages: dependencies: '@types/html-minifier-terser': 5.1.2 html-minifier-terser: 5.1.1 - vite: 4.4.9(sass@1.68.0) + vite: 4.4.9(@types/node@20.7.0)(sass@1.68.0) dev: true /@surma/rollup-plugin-off-main-thread@2.2.3: @@ -2539,7 +2542,7 @@ packages: resolution: {integrity: sha512-c0hrgAOVYr21EX8J0jBMXGLMgJqVf/v6yxi0dLaJboW9aQPh16Id+z6w2Tx1hm+piJOLv8xPfVKZCLfjPw/IMQ==} dependencies: '@types/jsonfile': 6.1.2 - '@types/node': 20.6.5 + '@types/node': 20.7.0 dev: true /@types/gapi.client.discovery-v1@0.0.1: @@ -2591,7 +2594,7 @@ packages: /@types/jsonfile@6.1.2: resolution: {integrity: sha512-8t92P+oeW4d/CRQfJaSqEwXujrhH4OEeHRjGU3v1Q8mUS8GPF3yiX26sw4svv6faL2HfBtGTe2xWIoVgN3dy9w==} dependencies: - '@types/node': 20.6.5 + '@types/node': 20.7.0 dev: true /@types/lodash-es@4.17.9: @@ -2617,7 +2620,7 @@ packages: /@types/node-fetch@2.6.6: resolution: {integrity: sha512-95X8guJYhfqiuVVhRFxVQcf4hW/2bCuoPwDasMf/531STFoNoWTT7YDnWdXHEZKqAGUigmpG31r2FE70LwnzJw==} dependencies: - '@types/node': 20.6.5 + '@types/node': 20.7.0 form-data: 4.0.0 dev: false @@ -2625,8 +2628,8 @@ packages: resolution: {integrity: sha512-+pMhShR3Or5GR0/sp4Da7FnhVmTalWm81M6MkEldbwjETSaPalw138Z4KdpQaistvqQxLB7Cy4xwYdxpbSOs9Q==} dev: true - /@types/node@20.6.5: - resolution: {integrity: sha512-2qGq5LAOTh9izcc0+F+dToFigBWiK1phKPt7rNhOqJSr35y8rlIBjDwGtFSgAI6MGIhjwOVNSQZVdJsZJ2uR1w==} + /@types/node@20.7.0: + resolution: {integrity: sha512-zI22/pJW2wUZOVyguFaUL1HABdmSVxpXrzIqkjsHmyUjNhPoWM1CKfvVuXfetHhIok4RY573cqS0mZ1SJEnoTg==} /@types/normalize-package-data@2.4.2: resolution: {integrity: sha512-lqa4UEhhv/2sjjIQgjX8B+RBjj47eo0mzGasklVJ78UKGQY1r0VpB9XHDaZZO9qzEFDdy4MrXLuEaSmPrPSe/A==} @@ -2664,7 +2667,7 @@ packages: /@types/resolve@1.17.1: resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} dependencies: - '@types/node': 20.6.5 + '@types/node': 20.7.0 dev: true /@types/scheduler@0.16.3: @@ -2831,7 +2834,7 @@ packages: vite: ^4 dependencies: '@swc/core': 1.3.88 - vite: 4.4.9(sass@1.68.0) + vite: 4.4.9(@types/node@20.7.0)(sass@1.68.0) transitivePeerDependencies: - '@swc/helpers' dev: true @@ -5005,7 +5008,7 @@ packages: resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 20.6.5 + '@types/node': 20.7.0 merge-stream: 2.0.0 supports-color: 7.2.0 dev: true @@ -6999,14 +7002,14 @@ packages: debug: 4.3.4 fast-glob: 3.3.1 pretty-bytes: 6.1.1 - vite: 4.4.9(sass@1.68.0) + vite: 4.4.9(@types/node@20.7.0)(sass@1.68.0) workbox-build: 7.0.0 workbox-window: 7.0.0 transitivePeerDependencies: - supports-color dev: true - /vite@4.4.9(sass@1.68.0): + /vite@4.4.9(@types/node@20.7.0)(sass@1.68.0): resolution: {integrity: sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true @@ -7034,6 +7037,7 @@ packages: terser: optional: true dependencies: + '@types/node': 20.7.0 esbuild: 0.18.20 postcss: 8.4.30 rollup: 3.29.3 diff --git a/src/views/components/common/cloud-service-login-button.tsx b/src/views/components/common/cloud-service-login-button.tsx index 2afe09b..96476b1 100644 --- a/src/views/components/common/cloud-service-login-button.tsx +++ b/src/views/components/common/cloud-service-login-button.tsx @@ -98,6 +98,7 @@ export function CloudServiceLoginButton({ return (
+