From b739493c5f915235b820978accc9986ef56fe228 Mon Sep 17 00:00:00 2001 From: Ray Schamp <ray@scratch.mit.edu> Date: Tue, 10 Jul 2018 16:41:11 -0400 Subject: [PATCH] Test that the expected project URI is requested --- test/helpers/selenium-helper.js | 3 +++ test/integration/examples.test.js | 16 ++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/test/helpers/selenium-helper.js b/test/helpers/selenium-helper.js index ce2d6a533..2d979e448 100644 --- a/test/helpers/selenium-helper.js +++ b/test/helpers/selenium-helper.js @@ -44,6 +44,9 @@ class SeleniumHelper { args.push('--headless'); } chromeCapabilities.set('chromeOptions', {args}); + chromeCapabilities.setLoggingPrefs({ + performance: 'ALL' + }); this.driver = new webdriver.Builder() .forBrowser('chrome') .withCapabilities(chromeCapabilities) diff --git a/test/integration/examples.test.js b/test/integration/examples.test.js index f745dc24d..ecaeb56f2 100644 --- a/test/integration/examples.test.js +++ b/test/integration/examples.test.js @@ -35,6 +35,14 @@ describe('player example', () => { await clickXpath('//img[@title="Stop"]'); const logs = await getLogs(); await expect(logs).toEqual([]); + const projectRequests = await driver.manage().logs() + .get('performance') + .then(pLogs => pLogs.map(log => JSON.parse(log.message).message) + .filter(m => m.method === 'Network.requestWillBeSent') + .map(m => m.params.request.url) + .filter(url => url === 'https://projects.scratch.mit.edu/internalapi/project/96708228/get/') + ); + await expect(projectRequests).toEqual(['https://projects.scratch.mit.edu/internalapi/project/96708228/get/']); }); }); @@ -58,6 +66,14 @@ describe('blocks example', () => { await clickXpath('//img[@title="Stop"]'); const logs = await getLogs(); await expect(logs).toEqual([]); + const projectRequests = await driver.manage().logs() + .get('performance') + .then(pLogs => pLogs.map(log => JSON.parse(log.message).message) + .filter(m => m.method === 'Network.requestWillBeSent') + .map(m => m.params.request.url) + .filter(url => url === 'https://projects.scratch.mit.edu/internalapi/project/96708228/get/') + ); + await expect(projectRequests).toEqual(['https://projects.scratch.mit.edu/internalapi/project/96708228/get/']); }); test('Change categories', async () => { -- GitLab