Comments (5)
This is true even if I just copy-paste in https://github.com/Synthetixio/synpress/blob/master/tests/e2e/specs/metamask-spec.js and run it. It always fails to complete the cy.task('setupMetamask')
function.
from synpress.
I had a similar issue and it took a few rounds of debugging to get this base test case passing. Here's what I noticed / changed:
- The tsconfig.js in my /tests/e2e was not being picked up by the typescript compiler so I had to make debugging changes to the tsconfig in my project root
- The application running at localhost didn't accept connections to rpc's with chainId: 42 (kovan) so I made sure it was supported by my rpc connector
- I was not targeting the right ecmascript target. Changing the target from
es5
toesnext
got the tests working - Needed to set
importHelpers
in mycompilerOptions
to true - Needed to install
tslib
and set it's path in thepaths
object of tsconfig
Hope these help you!
from synpress.
Thanks for helping @raparri01 . I switched to using dappeteer (with puppet) and it worked more smoothly.
from synpress.
@cinjon @raparri01 sorry for late response.
You are missing SKIP_METAMASK_SETUP=true
if you want to use your custom setupMetamask()
function in tests. In general, you shouldn't be really using it this way if not required.
I recommend sticking with default method which requires you to set environmental variables mentioned in the readme to make it work (like SECRET_WORDS='test test'
or PRIVATE_KEY=test
). Then everything is handled automatically for you every test and you don't have to repeat it yourself in your tests.
from synpress.
@drptbl where do you have to set these environment variables?
edit:
Nevermind! Had to set those before I ran the command:
PRIVATE_KEY="" NETWORK_NAME=rinkeby yarn synpress run
Got confused because in the readme, I saw -e
and thought I have to pass the envs after the command itself, and it wasn't working for me
from synpress.
Related Issues (20)
- Metamask window freeze after 'cy.confirmMetamaskTransaction() intermittently '[🐛 Bug]: <title> HOT 5
- [🐛 Bug]: Sometimes calling metamask.confirmPermissionToApproveAll() method on Metamask approve window is failing using Playwright + Synpress as plugin HOT 7
- [🐛 Bug]: Can't run synpress 3.7.2-beta.9 in Github Actions (`cy.task('setupMetamask')` timed out after waiting `120000ms`.) HOT 3
- [🐛 Bug]: Alpha version: Wallet cache hashes are different between generation and test HOT 8
- [💡 Feature]: ability to use a custom browser when creating a cache
- acceptMetamaskAccess() failing with cy.task() error HOT 3
- `cy.task('setupMetamask')` failed with ECONNREFUSED 127.0.0.1:9222 ("before all" hook) HOT 2
- Expect to support tronlink connections
- No response from RPC HOT 2
- confirmSignatureRequest() failing in Playwright + Synpress - Error: page.waitForSelector: Target closed waiting for locator('.notification .request-signature__footer__sign-button') to be visible
- [🐛 Bug]: Wrong uncaught exception handing produces "process is not defined" error HOT 3
- [💡 Feature]: Synpress with fully parallel run with metamask windows HOT 4
- [🐛 Bug]: An error of 'Timeout 30000ms exceeded.' occurred in Docker mode But Correct in non Docker mode HOT 12
- Module parse failed: 'import' and 'export' may appear only with 'sourceType: module' (1:0) HOT 16
- [💡 Feature]: Validate all user inputs with zod
- [🐛 Bug]: Module parse failed: Unexpected token HOT 2
- [💡 Feature]: Save metamask configuration in a fixture so that the entire setup doesn't happen with every run
- [🐛 Bug]: `cy.importMetamaskAccount()` timeout on duplicate account HOT 1
- [💡 Feature]: Autoconnect a newly switched account to the dapp if one was connected previously HOT 1
- can't run with playwright HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from synpress.