diff --git a/README.md b/README.md index 3f525e8..b82fb9d 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,7 @@ At the moment, `browser-launcher` supports following browsers on Windows, Unix a - IE (Windows only) - Chromium-based Edge - Brave +- Helium - Opera - Safari (Mac only) - PhantomJS diff --git a/src/browsers.ts b/src/browsers.ts index 34585d4..c8036c1 100644 --- a/src/browsers.ts +++ b/src/browsers.ts @@ -87,6 +87,13 @@ const browserDefinitions: BrowserDefinitions = { 'brave-nightly': ['brave-browser-nightly', 'brave-nightly'] } }, + helium: { + regex: /Helium (\S+)/, + profile: true, + variants: { + 'helium': ['helium', 'helium-browser'] + } + }, opera: { regex: /Opera (\S+)/, profile: true, diff --git a/src/darwin/index.ts b/src/darwin/index.ts index 65d4f3d..06bf409 100644 --- a/src/darwin/index.ts +++ b/src/darwin/index.ts @@ -33,6 +33,7 @@ const darwinBrowsers: { [name: string]: DarwinBrowser } = { 'brave-beta': browser('com.brave.Browser.beta', 'CFBundleVersion'), 'brave-dev': browser('com.brave.Browser.dev', 'CFBundleVersion'), 'brave-nightly': browser('com.brave.Browser.nightly', 'CFBundleVersion'), + helium: browser('net.imput.helium', 'CFBundleShortVersionString'), arc: browser('company.thebrowser.Browser', 'CFBundleVersion') }; diff --git a/src/run.ts b/src/run.ts index 810980d..b82b110 100644 --- a/src/run.ts +++ b/src/run.ts @@ -227,9 +227,10 @@ setups.chrome = async function (browser: Browser, options: LaunchOptions): Promi }; setups.chromium = setups.chrome; -// Brave, new MS Edge & Arc are all Chromium based, treated as identical: +// Brave, Helium, new MS Edge & Arc are all Chromium based, treated as identical: setups.msedge = setups.chrome; setups.brave = setups.chrome; +setups.helium = setups.chrome; setups.arc = setups.chrome; /** diff --git a/test/integration.test.js b/test/integration.test.js index d67034d..c71c71a 100644 --- a/test/integration.test.js +++ b/test/integration.test.js @@ -30,7 +30,7 @@ describe('Browser Launcher Integration Tests', function() { it('should return valid browser types', async function() { const validTypes = ['chrome', 'chromium', 'firefox', 'safari', 'ie', - 'msedge', 'brave', 'opera', 'phantomjs', 'arc']; + 'msedge', 'brave', 'helium', 'opera', 'phantomjs', 'arc']; const browsers = await detectBrowsers(); browsers.forEach(function(browser) {