Skip to content

Commit 42adf83

Browse files
dever23baklinker1
authored andcommitted
feat: Allow port option for launching chromium browser (#3)
1 parent a5917ca commit 42adf83

File tree

3 files changed

+28
-0
lines changed

3 files changed

+28
-0
lines changed

src/cmd/run.js

+2
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ export default async function run(
5353
chromiumBinary,
5454
chromiumPref,
5555
chromiumProfile,
56+
chromiumPort,
5657
},
5758
{
5859
buildExtension = defaultBuildExtension,
@@ -198,6 +199,7 @@ export default async function run(
198199
chromiumBinary,
199200
chromiumProfile,
200201
customChromiumPrefs,
202+
chromiumPort,
201203
noReloadManagerExtension,
202204
};
203205

src/extension-runners/chromium.js

+7
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,12 @@ export class ChromiumExtensionRunner {
213213
chromeFlags.push(...startingUrls);
214214
}
215215

216+
let port;
217+
if (this.params.chromiumPort && !isNaN(this.params.chromiumPort)) {
218+
port = this.params.chromiumPort;
219+
log.debug(`(port: ${port})`);
220+
}
221+
216222
this.chromiumInstance = await this.chromiumLaunch({
217223
enableExtensions: true,
218224
chromePath: chromiumBinary,
@@ -222,6 +228,7 @@ export class ChromiumExtensionRunner {
222228
// Ignore default flags to keep the extension enabled.
223229
ignoreDefaultFlags: true,
224230
prefs: this.getPrefs(),
231+
port,
225232
});
226233

227234
this.chromiumInstance.process.once('close', () => {

tests/unit/test-extension-runners/test.chromium.js

+19
Original file line numberDiff line numberDiff line change
@@ -649,6 +649,25 @@ describe('util/extension-runners/chromium', async () => {
649649
await runnerInstance.exit();
650650
});
651651

652+
it('does pass port to chrome', async () => {
653+
const port = 31269;
654+
const { params } = prepareExtensionRunnerParams({
655+
params: {
656+
chromiumPort: port,
657+
},
658+
});
659+
660+
const runnerInstance = new ChromiumExtensionRunner(params);
661+
await runnerInstance.run();
662+
663+
sinon.assert.calledOnce(params.chromiumLaunch);
664+
sinon.assert.calledWithMatch(params.chromiumLaunch, {
665+
port,
666+
});
667+
668+
await runnerInstance.exit();
669+
});
670+
652671
describe('reloadAllExtensions', () => {
653672
let runnerInstance;
654673
let wsClient;

0 commit comments

Comments
 (0)