Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

End-to-end testing #151

Open
wbobeirne opened this issue Jan 19, 2019 · 1 comment
Open

End-to-end testing #151

wbobeirne opened this issue Jan 19, 2019 · 1 comment

Comments

@wbobeirne
Copy link
Member

It would bring my mind a lot of ease to have some somewhat reliable ent-to-end testing. This would ideally cover the extension itself, as well as WebLN interactions. Currently I'm looking at Cypress, but some challenges are presented with this:

  1. Cypress doesn't yet let you visit chrome extension options pages.
  2. Cypress doesn't implement the web extension APIs, so things like requesting permissions and the storage system won't work.
  3. It will be prohibitively difficult to get a regtest lightning node to work in CI.

Some options for getting around these things:

  1. Run a server that exposes the extension's options page through a port and visit that instead of chrome-extension://
  2. Stub out the extension APIs using something like sinon-chrome.
  3. Mock an lnd node as well. This would severely reduce the usefulness of this since tests wouldn't be an accurate representation of connecting to a real node.

It looks like Metamask is also looking to implement something like this, so it'll be interesting to see how they tackle the problem.

@alepop
Copy link

alepop commented Apr 9, 2019

wbobeirne pushed a commit that referenced this issue Oct 13, 2020
…n/@babel/preset-env-7.11.5

Upgrade @babel/preset-env: 7.10.4 → 7.11.5 (minor)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants