diff --git a/test/features/ignorehttpserrors.spec.js b/test/features/ignorehttpserrors.spec.js new file mode 100644 index 0000000000..f0ea194009 --- /dev/null +++ b/test/features/ignorehttpserrors.spec.js @@ -0,0 +1,47 @@ +/** + * Copyright 2018 Google Inc. All rights reserved. + * Modifications copyright (c) Microsoft Corporation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +module.exports.addTests = function({testRunner, expect, defaultBrowserOptions, playwright, FFOX, CHROME, WEBKIT}) { + const {describe, xdescribe, fdescribe} = testRunner; + const {it, fit, xit} = testRunner; + const {beforeAll, beforeEach, afterAll, afterEach} = testRunner; + describe('ignoreHTTPSErrors', function() { + beforeAll(async state => { + state.browser = await playwright.launch({...defaultBrowserOptions, ignoreHTTPSErrors: true}); + }); + afterAll(async state => { + await state.browser.close(); + delete state.browser; + }); + beforeEach(async state => { + state.context = await state.browser.newContext(); + state.page = await state.context.newPage(); + }); + afterEach(async state => { + await state.context.close(); + delete state.context; + delete state.page; + }); + + it('should work with request interception', async({page, server, httpsServer}) => { + await page.interception.enable(); + page.on('request', request => page.interception.continue(request)); + const response = await page.goto(httpsServer.EMPTY_PAGE); + expect(response.status()).toBe(200); + }); + }); +}; diff --git a/test/ignorehttpserrors.spec.js b/test/ignorehttpserrors.spec.js index 1c5e82247f..5dbc3b2f81 100644 --- a/test/ignorehttpserrors.spec.js +++ b/test/ignorehttpserrors.spec.js @@ -43,12 +43,6 @@ module.exports.addTests = function({testRunner, expect, defaultBrowserOptions, p expect(error).toBe(null); expect(response.ok()).toBe(true); }); - it.skip(WEBKIT)('should work with request interception', async({page, server, httpsServer}) => { - await page.interception.enable(); - page.on('request', request => page.interception.continue(request)); - const response = await page.goto(httpsServer.EMPTY_PAGE); - expect(response.status()).toBe(200); - }); it.skip(WEBKIT)('should work with mixed content', async({page, server, httpsServer}) => { httpsServer.setRoute('/mixedcontent.html', (req, res) => { res.end(``); diff --git a/test/playwright.spec.js b/test/playwright.spec.js index c82f07e311..50a87dd19a 100644 --- a/test/playwright.spec.js +++ b/test/playwright.spec.js @@ -180,6 +180,10 @@ module.exports.addTests = ({testRunner, product, playwrightPath}) => { require('./ignorehttpserrors.spec.js').addTests(testOptions); require('./launcher.spec.js').addTests(testOptions); + if (CHROME || FFOX) { + require('./features/ignorehttpserrors.spec.js').addTests(testOptions); + } + if (CHROME) { require('./chromium/connect.spec.js').addTests(testOptions); require('./chromium/launcher.spec.js').addTests(testOptions);