webdriverio-community / wdio-electron-service

WebdriverIO service for testing Electron applications
https://webdriver.io
MIT License
32 stars 14 forks source link

Use of multiple build tools is not an error #622

Closed reubenscratton closed 2 weeks ago

reubenscratton commented 1 month ago

Currently application.ts detects the use of Electron Forge and electron builder configs, and throws an error if both are present.

IMNSHO this should not be regarded as an error. My project is forced to use Electron Forge and Builder, because Forge on Windows just doesn't work for us. So we use Forge for Mac builds and Builder for Windows.

This is obviously a rare situation but I imagine the logical fix would be an optional value in wdio:electronServiceOptions that disambiguates which build tool to use.

goosewobbler commented 1 month ago

@reubenscratton Thanks for the report, I think you're right that this shouldn't be an error. I can see how you might end up using two build tools, both of them need a fair bit of work in a few different areas.

goosewobbler commented 1 month ago

I think adding a new option to wdio:electronServiceOptions just for this case is not the way to go - the build tool detection is only used to determine the appBinaryPath, which can be set manually. So I think for the multiple build tool case we remove the error, use the Forge config by default and add warnings into the logs to explain what is happening and how the appBinaryPath can be overridden if the behaviour is not desired.

goosewobbler commented 2 weeks ago

@reubenscratton This is released in 7.0.0-beta.1. You will need to use the WDIO v9 pre-release with it.

UPDATE: having some issues with the pre-releases, follow #533 for more info UPDATE: finally released as 7.0.0-beta.9