-
Notifications
You must be signed in to change notification settings - Fork 41
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
First pass at getting new UI testing down #4487
Conversation
For now we have to run next spearately to run the tests, eventually we want capybara to launch next and run the tests. At least locally, this gets bin/rails test test/features/publishers_home_test.rb:28 working. The shadowdom is tricky to work with, so we might want to revisit that in the future.
This is ready to go except for an elliptic check which just popped up See indutny/elliptic#317 for more Will make a separate PR for that before merging this |
From what I can tell, this is occurring because we need crypto-browserify>browserify-sign>elliptic as a webpack replacement for node crypto. However, it's not clear where this is actually in use when I did a quick search through the various JS code. I did also have a quick DM with @tsmartt to see if there was something I missed and it doesn't seem like it. AFAICT we're only producing signatures on the JS side and that's done by calling into the wallet scripts injected by the wallet (which means the wallet code of the user is doing the signing not our frontend code), but not verifying them with JS. I did check through where we're actually doing verification of signatures and it appears to be using ruby instead so I don't believe we're hitting the vulnerable code paths. If for some reason you find that we are using So, I'm alright if we just ignore this update until the patch to the elliptic library is accepted and propagated through to crypto-browserify. Alternatively, since it doesn't seem like crypto-browserify is actually in use we could also look at dropping the dependency all together. |
I looked at dropping crypto-browserify, and to do that we need to move to solana's new v2 webjs library. It's currently in RC so let's keep an eye on that. https://github.com/solana-labs/solana-web3.js/releases For now I'll ignore this particular CVE. Thanks! |
Ok, if only solana's web3.js is using crypto-browersify I'm confident this doesn't affect us. |
[puLL-Merge] - brave-intl/publishers@4487 DescriptionThis PR introduces significant changes to the project structure, test setup, and dependencies. It primarily focuses on updating the testing framework, moving from Capybara to a custom system test setup using Selenium WebDriver with Chromium. The changes also include updates to various gem versions and the introduction of a Next.js testing environment. Possible Issues
Security Hotspots
ChangesChanges
These changes represent a significant shift in the testing approach, moving towards a more integrated system test setup that includes Next.js components. The PR also includes various dependency updates and security-related changes. |
Resolves https://github.com/brave-intl/creators-private-issues/issues/1859
This PR sets up a separate set of Capybara tests to hit the new UI written in NextJS.
We add a test runner script that will run the old tests as well as the new UI tests.
They must be run separately as we redirect Capybara to an external host which breaks a bunch of the old tests.
Using this separate runner we can piecemeal port the old capybara tests over to the new UI.