Skip to content

Commit

Permalink
test: add first-party-set chromium tests (electron#34827)
Browse files Browse the repository at this point in the history
test: add first-part-set chromium feature tests
  • Loading branch information
VerteDinde authored and schetle committed Aug 18, 2022
1 parent e7ea1d6 commit b494304
Show file tree
Hide file tree
Showing 5 changed files with 71 additions and 0 deletions.
31 changes: 31 additions & 0 deletions spec-main/chromium-spec.ts
Expand Up @@ -495,6 +495,37 @@ describe('chromium features', () => {
});
});

describe('first party sets', () => {
const fps = [
'https://fps-member1.glitch.me',
'https://fps-member2.glitch.me',
'https://fps-member3.glitch.me'
];

it('loads first party sets', async () => {
const appPath = path.join(fixturesPath, 'api', 'first-party-sets', 'base');
const fpsProcess = ChildProcess.spawn(process.execPath, [appPath]);

let output = '';
fpsProcess.stdout.on('data', data => { output += data; });
await emittedOnce(fpsProcess, 'exit');

expect(output).to.include(fps.join(','));
});

it('loads sets from the command line', async () => {
const appPath = path.join(fixturesPath, 'api', 'first-party-sets', 'command-line');
const args = [appPath, `--use-first-party-set=${fps}`];
const fpsProcess = ChildProcess.spawn(process.execPath, args);

let output = '';
fpsProcess.stdout.on('data', data => { output += data; });
await emittedOnce(fpsProcess, 'exit');

expect(output).to.include(fps.join(','));
});
});

describe('loading jquery', () => {
it('does not crash', (done) => {
const w = new BrowserWindow({ show: false });
Expand Down
20 changes: 20 additions & 0 deletions spec/fixtures/api/first-party-sets/base/main.js
@@ -0,0 +1,20 @@
const { app } = require('electron');

const sets = [
'https://fps-member1.glitch.me',
'https://fps-member2.glitch.me',
'https://fps-member3.glitch.me'
];

app.commandLine.appendSwitch('use-first-party-set', sets.join(','));

app.whenReady().then(function () {
const hasSwitch = app.commandLine.hasSwitch('use-first-party-set');
const value = app.commandLine.getSwitchValue('use-first-party-set');
if (hasSwitch) {
process.stdout.write(JSON.stringify(value));
process.stdout.end();
}

app.quit();
});
4 changes: 4 additions & 0 deletions spec/fixtures/api/first-party-sets/base/package.json
@@ -0,0 +1,4 @@
{
"name": "electron-test-first-party-sets-base",
"main": "main.js"
}
12 changes: 12 additions & 0 deletions spec/fixtures/api/first-party-sets/command-line/main.js
@@ -0,0 +1,12 @@
const { app } = require('electron');

app.whenReady().then(function () {
const hasSwitch = app.commandLine.hasSwitch('use-first-party-set');
const value = app.commandLine.getSwitchValue('use-first-party-set');
if (hasSwitch) {
process.stdout.write(JSON.stringify(value));
process.stdout.end();
}

app.quit();
});
4 changes: 4 additions & 0 deletions spec/fixtures/api/first-party-sets/command-line/package.json
@@ -0,0 +1,4 @@
{
"name": "electron-test-first-party-sets-command-line",
"main": "main.js"
}

0 comments on commit b494304

Please sign in to comment.