Skip to content

Commit 84284e6

Browse files
authored
test maintenance 2 Sep 2025 (#1983)
* chore: update Chai.js * test: disable mutli-address discovery for some tests * test: fix LW-3226 * test: fix LW-2343 * docs: clean up README.md for tests
1 parent ad050fb commit 84284e6

File tree

6 files changed

+23
-61
lines changed

6 files changed

+23
-61
lines changed

packages/e2e-tests/README.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ UI-mapped gherkin tests for the Lace browser extension
44

55
## Prerequisites
66

7-
- Java 8+ (optional if you already have webdriver running on port 4444)
7+
- Java 8+ (optional if you already have a webdriver running on port 4444)
88
- it is only required when using
99
with [selenium-standalone](https://github.com/webdriverio/selenium-standalone/blob/main/docs/java-versions.md)
1010
- On macOS, you can install it easily with homebrew: `brew install openjdk`
@@ -14,7 +14,7 @@ UI-mapped gherkin tests for the Lace browser extension
1414

1515
## Running tests locally
1616

17-
- Set environment variable with wallet password that is used for test wallets and for decryption
17+
- Set an environment variable with a wallet password that is used for test wallets and for decryption
1818

1919
- `export WALLET_1_PASSWORD='<password>'`
2020

@@ -54,8 +54,8 @@ UI-mapped gherkin tests for the Lace browser extension
5454
- edge
5555
- firefox
5656
- does not support network interception or console log collection, so some tests/features are disabled (using `@skip(browserName="firefox")` tag)
57-
- works only with Firefox Developer Edition, as the regular version does not allow the use of extensions
58-
- does not support device emulation, so popup mode is simulated by simply resizing the window, which is not an ideal method of simulation
57+
- it works only with Firefox Developer Edition, as the regular version does not allow the use of extensions
58+
- it does not support device emulation, so popup mode is simulated by simply resizing the window, which is not an ideal method of simulation
5959

6060
## Supported params
6161

@@ -65,25 +65,25 @@ UI-mapped gherkin tests for the Lace browser extension
6565
- `ENV=(mainnet|preprod|preview)`default = preprod (optional)
6666
- determines default network used for tests
6767
- `WALLET_1_PASSWORD=<password>`(required)
68-
- password for wallet, should match the password that is used in `walletConfiguration.ts` (can be set as an
68+
- password for wallet should match the password that is used in `walletConfiguration.ts` (can be set as an
6969
environment variable)
7070
- `TEST_DAPP_URL=<url>`(required)
7171
- url for test DApp (only for DApp Connector tests)
7272
- `SERVICE_WORKER_LOGS=true|false` default=false (optional)
7373
- enables service worker logs collection
7474
- not supported for Firefox
7575
- `FIREFOX_BINARY=/Applications/Firefox\ Developer\ Edition.app/Contents/MacOS/firefox` (required for Firefox)
76-
- default path to Firefox Developer Edition binary on MacOS, please adjust to your local setup
76+
- default path to Firefox Developer Edition binary on macOS, please adjust to your local setup
7777

78-
## Run single feature file with params
78+
## Run a single feature file with params
7979

8080
- `ENV=preprod WALLET_1_PASSWORD='<password>' yarn wdio run wdio.conf.<browser>.ts --spec SendTransactionSimpleExtended.feature`
8181

8282
## Updating walletConfiguration.ts (for development)
8383

8484
- decrypt `walletConfiguration.ts.gpg` by running `./decrypt_secret.sh` (from the `packages/e2e-tests` directory)
8585
- delete `packages/e2e-tests/src/support/walletConfiguration.ts.gpg`
86-
- make necessary updates in `packages/e2e-tests/src/support/walletConfiguration.ts`
86+
- make the necessary updates in `packages/e2e-tests/src/support/walletConfiguration.ts`
8787
- encrypt `walletConfiguration.ts` by running `./encrypt_secret.sh` (from the `packages/e2e-tests` directory)
8888
- delete `packages/e2e-tests/src/support/walletConfiguration.ts`
8989

@@ -92,13 +92,13 @@ UI-mapped gherkin tests for the Lace browser extension
9292
- build docker image locally <https://github.com/input-output-hk/lace-hw-testing-toolkit.git> or
9393
- `docker pull public.ecr.aws/e8d0p1a5/lw-hw-testing-toolkit:latest` (you need to be authenticated) and run it
9494
- After starting docker image (info should be displayed - `⚡️ Trezor Device Manipulation API is running at http://localhost:8000`)
95-
Tests need to be triggered in 60 sec because emulator shuts down device if there is no action
95+
Tests need to be triggered in 60 sec because emulator shuts down a device if there is no action
9696

9797
## Running tests locally in debug mode using IntelliJ IDEA/WebStorm
9898

99-
- create new run configuration
99+
- create a new run configuration
100100
- type: npm
101-
- fill newly created configuration & environment variables as per attached screenshot
101+
- fill newly created configuration and environment variables as per attached screenshot
102102
- `example: STANDALONE_DRIVER=true;ENV=preprod;TEST_DAPP_URL=<yourUrl>;WALLET_1_PASSWORD=<walletPassword>`\
103103
![debug1.png](src/images/readme/debug1.png)
104104
- make sure you have a chromedriver running on port 4444 (in case of STANDALONE_DRIVER=true)

packages/e2e-tests/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
"@types/chai": "5.2.2",
2727
"@types/chai-sorted": "0.2.3",
2828
"@types/chai-string": "1.4.5",
29-
"chai": "5.3.1",
29+
"chai": "6.0.1",
3030
"chai-sorted": "0.2.0",
3131
"chai-string": "1.6.0"
3232
},

packages/e2e-tests/src/assert/tokensPageAssert.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,10 @@ class TokensPageAssert {
3030

3131
assertCounterNumberMatchesWalletTokens = async () => {
3232
const tokensCounterValue = await TokensPage.getTokensCounterAsNumber();
33-
if (tokensCounterValue > 0) await TokensPage.coinGeckoCredits.scrollIntoView();
33+
if (tokensCounterValue > 0) {
34+
await TokensPage.coinGeckoCredits.moveTo();
35+
await TokensPage.coinGeckoCredits.scrollIntoView();
36+
}
3437
await TokensPage.tokenRowSkeleton.waitForDisplayed({ reverse: true, timeout: 60_000 });
3538
const rowsNumber = (await TokensPage.getRows()).length;
3639
expect(rowsNumber).to.equal(tokensCounterValue);

packages/e2e-tests/src/features/NetworkSwitchingExtended.feature

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ Feature: LW: Network Switching - extended view
44
Background:
55
Given Wallet is synced
66
And I disable showing Multidelegation beta banner
7+
And I disable showing Multidelegation DApps issue modal
78

89
@LW-3226
910
Scenario Outline: Extended View - Currency symbol is correct when on different network - <network> <ticker>

packages/e2e-tests/src/hooks/beforeTagHooks.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ Before(
4343
async () => {
4444
await extendedViewRepositoryWalletInitialization([TestWalletName.TestAutomationWallet]);
4545
await localStorageInitializer.disableShowingMultidelegationBetaBanner();
46+
await localStorageInitializer.initializeShowMultiAddressDiscoveryModal(false);
4647
}
4748
);
4849

yarn.lock

Lines changed: 5 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -12676,7 +12676,7 @@ __metadata:
1267612676
"@wdio/spec-reporter": 8.43.0
1267712677
"@wdio/types": 8.41.0
1267812678
allure-commandline: 2.33.0
12679-
chai: 5.3.1
12679+
chai: 6.0.1
1268012680
chai-sorted: 0.2.0
1268112681
chai-string: 1.6.0
1268212682
clipboardy: 4.0.0
@@ -26328,13 +26328,6 @@ __metadata:
2632826328
languageName: node
2632926329
linkType: hard
2633026330

26331-
"assertion-error@npm:^2.0.1":
26332-
version: 2.0.1
26333-
resolution: "assertion-error@npm:2.0.1"
26334-
checksum: a0789dd882211b87116e81e2648ccb7f60340b34f19877dd020b39ebb4714e475eb943e14ba3e22201c221ef6645b7bfe10297e76b6ac95b48a9898c1211ce66
26335-
languageName: node
26336-
linkType: hard
26337-
2633826331
"assign-symbols@npm:^1.0.0":
2633926332
version: 1.0.0
2634026333
resolution: "assign-symbols@npm:1.0.0"
@@ -28730,16 +28723,10 @@ __metadata:
2873028723
languageName: node
2873128724
linkType: hard
2873228725

28733-
"chai@npm:5.3.1":
28734-
version: 5.3.1
28735-
resolution: "chai@npm:5.3.1"
28736-
dependencies:
28737-
assertion-error: ^2.0.1
28738-
check-error: ^2.1.1
28739-
deep-eql: ^5.0.1
28740-
loupe: ^3.1.0
28741-
pathval: ^2.0.0
28742-
checksum: e68804fbf0936f338519ea4bbfded3f3cd00e6b24a847efe4c50b8fcb63a9d0e9a08a77ae409de59718dca44810d00d6a0e7f9db57afb39e2853a82ac6afa0e2
28726+
"chai@npm:6.0.1":
28727+
version: 6.0.1
28728+
resolution: "chai@npm:6.0.1"
28729+
checksum: 70fb4f9bfdd6f7720c99e0a6dadeeb650ffc15e0c02326577ad0e39d12313c61b8231e5b7b2c96a8c946a46435c0b2fa0f126b92b044e0eb28c2e00b98f1b713
2874328730
languageName: node
2874428731
linkType: hard
2874528732

@@ -28892,13 +28879,6 @@ __metadata:
2889228879
languageName: node
2889328880
linkType: hard
2889428881

28895-
"check-error@npm:^2.1.1":
28896-
version: 2.1.1
28897-
resolution: "check-error@npm:2.1.1"
28898-
checksum: d785ed17b1d4a4796b6e75c765a9a290098cf52ff9728ce0756e8ffd4293d2e419dd30c67200aee34202463b474306913f2fcfaf1890641026d9fc6966fea27a
28899-
languageName: node
28900-
linkType: hard
28901-
2890228882
"cheerio-select@npm:^2.1.0":
2890328883
version: 2.1.0
2890428884
resolution: "cheerio-select@npm:2.1.0"
@@ -31489,13 +31469,6 @@ __metadata:
3148931469
languageName: node
3149031470
linkType: hard
3149131471

31492-
"deep-eql@npm:^5.0.1":
31493-
version: 5.0.2
31494-
resolution: "deep-eql@npm:5.0.2"
31495-
checksum: 6aaaadb4c19cbce42e26b2bbe5bd92875f599d2602635dc97f0294bae48da79e89470aedee05f449e0ca8c65e9fd7e7872624d1933a1db02713d99c2ca8d1f24
31496-
languageName: node
31497-
linkType: hard
31498-
3149931472
"deep-equal@npm:^2.0.5":
3150031473
version: 2.2.3
3150131474
resolution: "deep-equal@npm:2.2.3"
@@ -43462,15 +43435,6 @@ __metadata:
4346243435
languageName: node
4346343436
linkType: hard
4346443437

43465-
"loupe@npm:^3.1.0":
43466-
version: 3.1.1
43467-
resolution: "loupe@npm:3.1.1"
43468-
dependencies:
43469-
get-func-name: ^2.0.1
43470-
checksum: c7efa6bc6d71f25ca03eb13c9a069e35ed86799e308ca27a7a3eff8cdf9500e7c22d1f2411468d154a8e960e91e5e685e0c6c83e96db748f177c1adf30811153
43471-
languageName: node
43472-
linkType: hard
43473-
4347443438
"lower-case@npm:^2.0.2":
4347543439
version: 2.0.2
4347643440
resolution: "lower-case@npm:2.0.2"
@@ -46831,13 +46795,6 @@ __metadata:
4683146795
languageName: node
4683246796
linkType: hard
4683346797

46834-
"pathval@npm:^2.0.0":
46835-
version: 2.0.0
46836-
resolution: "pathval@npm:2.0.0"
46837-
checksum: 682b6a6289de7990909effef7dae9aa7bb6218c0426727bccf66a35b34e7bfbc65615270c5e44e3c9557a5cb44b1b9ef47fc3cb18bce6ad3ba92bcd28467ed7d
46838-
languageName: node
46839-
linkType: hard
46840-
4684146798
"pbkdf2@npm:3.1.2, pbkdf2@npm:^3.0.3, pbkdf2@npm:^3.0.9, pbkdf2@npm:^3.1.2":
4684246799
version: 3.1.2
4684346800
resolution: "pbkdf2@npm:3.1.2"

0 commit comments

Comments
 (0)