// META: script=/service-workers/service-worker/resources/test-helpers.sub.js // META: script=resources/utils.js 'use strict'; // "If parsedURL includes credentials, then throw a TypeError." // https://fetch.spec.whatwg.org/#dom-request // (Added by https://github.com/whatwg/fetch/issues/26). // "A URL includes credentials if its username or password is not the empty // string." // https://url.spec.whatwg.org/#include-credentials backgroundFetchTest((t, bgFetch) => { return bgFetch.fetch(uniqueTag(), 'https://example.com'); }, 'fetch without credentials in URL should register ok'); backgroundFetchTest((t, bgFetch) => { return promise_rejects( t, new TypeError(), bgFetch.fetch(uniqueTag(), 'https://username:password@example.com')); }, 'fetch with username and password in URL should reject'); backgroundFetchTest((t, bgFetch) => { return promise_rejects( t, new TypeError(), bgFetch.fetch(uniqueTag(), 'https://username:@example.com')); }, 'fetch with username and empty password in URL should reject'); backgroundFetchTest((t, bgFetch) => { return promise_rejects( t, new TypeError(), bgFetch.fetch(uniqueTag(), 'https://:password@example.com')); }, 'fetch with empty username and password in URL should reject');