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

Bookmarks interop tests, automated #3

Open
wants to merge 11 commits into
base: main
Choose a base branch
from

Conversation

michielbdejong
Copy link
Collaborator

@michielbdejong michielbdejong commented Feb 9, 2024

  • use latest passing NSS - Solid test suite script as a starting point
  • add Cypress to test login to NSS
  • add launcher, markbook and poddit into Docker testnet
  • write whole test flow in Cypress

@michielbdejong
Copy link
Collaborator Author

Made some good progress, but Cypress cannot deal with popup windows so need to find an other way to log in to Markbook and Poddit.

@michielbdejong
Copy link
Collaborator Author

OK, looks like we can avoid popups, especially when going through the launcher.
The apps should probably not even have a 'log in' button with the WebID selector? See janeirodigital/sai-js#76

@michielbdejong
Copy link
Collaborator Author

michielbdejong commented Feb 15, 2024

Current status of these tests and progress made today:

  • I got my local Docker engine cleaned up so I no longer get the out-of-disk-space errors inside containers
  • I got Cypress working with the help of @MahdiBaghbani \o/
  • I discovered Cypress doesn't support popup windows so I decided to adapt launcher, markbook and poddit so that when you use a launcher-first flow, it doesn't use a popup
  • node Docker base image changed to v21 which broke our NSS image, so pinned that to node:18 instead of node:latest now
  • It seems crypto.subtle is missing in both the firefox browser and in the cypress browser that this testnet includes, so maybe it's time to move away from https://github.com/nodeSolidServer/solid-auth-client in the launcher, poddit and markbook and see if that fixes it
  • It's probably necessary to visit https://server and accept the risk before trying to connect with it from http://launcher:3000 or from http://markbook:3000 - or I should fix the way the firefox and cypress containers trust the CA that signed its cert (and then also move launcher and markbook onto https)

In general, this is starting to feel like a good way to get working and up-to-date versions of all moving parts of the Solid ecosystem, and of course it's a bit of work to go from manual tests to automated ones, but I think the benefits going forward will be considerable. I'm taking a week holidays but excited to continue work on this when I'm back! :)

@MahdiBaghbani
Copy link

MahdiBaghbani commented Mar 7, 2024

It's probably necessary to visit https://server/ and accept the risk before trying to connect with it from http://launcher:3000/ or from http://markbook:3000/ - or I should fix the way the firefox and cypress containers trust the CA that signed its cert (and then also move launcher and markbook onto https)

I think I would be able to replicate the process I have done here pondersource/dev-stock#85 for this repository as well.

@michielbdejong
Copy link
Collaborator Author

Logging in to http://markbook:3000/ fails, it seems the crypto.subtle web api is missing from the Firefox instance, or maybe it's blocked on http:// URLs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants