Upgrade canopy tests to use chrome headless
AFAIk the phantom is no longer in active development. We should move over to chrome headless. I'd lvoe to get help for that.
/cc @lefthandedgoat
ChromeHeadless should work, if it does not let me know and I will try getting the source of this repo and figuring it out.
https://github.com/lefthandedgoat/canopy/blob/master/src/canopy/canopy.fs#L871
yeah the question is: how would our buld change? I'd really appreciate a PR which shows best pratice ;-)
I have headless Chrome working with Canopy and Expecto on another project. I could draft a PR if that would help?
Rather than check in the drivers I used https://www.nuget.org/packages/Selenium.WebDriver.ChromeDriver/ (and the Gecko and Edge variants) which works well for us. That should avoid the need for the RenameDrivers target as well.
yes that is exactly what I hoped. getting drivers from nuget or npm.
Looks possible to switch:
Starting ChromeDriver 2.37.543627 (63642262d9fb93fb4ab52398be4286d844092a5e) on port 11238
Only local connections are allowed.
[0321/105831.498:ERROR:gpu_process_transport_factory.cc(1019)] Lost UI shared context.
DevTools listening on ws://127.0.0.1:12774/devtools/browser/2db2f1af-53ce-46ae-84a3-472b31dcf62f
EXPECTO version
[10:58:34 INF] EXPECTO? Running tests... <Expecto>
[0321/105844.828:INFO:CONSOLE(1)] "Error parsing url: http://localhost:8085/", source: http://localhost:8085/public/bundle.js (1)
[0321/105845.125:INFO:CONSOLE(1)] "Error parsing url: http://localhost:8085/", source: http://localhost:8085/public/bundle.js (1)
[0321/105851.322:INFO:CONSOLE(1)] "Error parsing url: http://localhost:8085/", source: http://localhost:8085/public/bundle.js (1)
[0321/105929.504:INFO:CONSOLE(1)] "Error parsing url: http://localhost:8085/", source: http://localhost:8085/public/bundle.js (1)
[11:00:27 INF] EXPECTO! 4 tests run in 00:01:52.9297318 - 4 passed, 0 ignored, 0 failed, 0 errored. Success! <Expecto>
(Windows output, worked on MacOS as well)
The main issue I see is that it expects Chrome to be present. That's true by default on AppVeyor and can be configured on TravisCI (https://docs.travis-ci.com/user/chrome) but a given user may not have it. Think that's an issue?
PR here: https://github.com/SAFE-Stack/SAFE-BookStore/pull/318
Hope this helps, please let me know if it you have any problems and I will do what I can to help.