Best JavaScript code snippet using wpt
nel.sub.js
Source:nel.sub.js
...77function loadResourceWithZeroSuccessFractionPolicyInIframe(subdomain) {78 return loadResourceWithPolicyInIframe(79 _getNELResourceURL(subdomain, "pass.png?id="+reportID+"&success_fraction=0.0"));80}81function clearResourceWithBasicPolicyInIframe(subdomain) {82 return loadResourceWithPolicyInIframe(83 getURLForClearingConfiguration(subdomain));84}85function loadResourceWithPolicyInIframe(url) {86 return new Promise((resolve, reject) => {87 const frame = document.createElement('iframe');88 frame.src = url;89 frame.onload = () => resolve(frame);90 frame.onerror = () => reject('failed to load ' + url);91 document.body.appendChild(frame);92 });93}94/*95 * Fetches a resource whose headers define an include_subdomains NEL policy.96 */97function getURLForResourceWithIncludeSubdomainsPolicy(subdomain) {98 return _getNELResourceURL(subdomain, "subdomains-pass.png?id="+reportID);99}100function fetchResourceWithIncludeSubdomainsPolicy(subdomain) {101 const url = getURLForResourceWithIncludeSubdomainsPolicy(subdomain);102 return fetch(url, {mode: "no-cors"});103}104/*105 * Fetches a resource whose headers do NOT define a NEL policy. This may or may106 * not generate a NEL report, depending on whether you've already successfully107 * requested a resource from the same origin that included a NEL policy.108 */109function getURLForResourceWithNoPolicy(subdomain) {110 return _getNELResourceURL(subdomain, "no-policy-pass.png");111}112function fetchResourceWithNoPolicy(subdomain) {113 const url = getURLForResourceWithNoPolicy(subdomain);114 return fetch(url, {mode: "no-cors"});115}116/*117 * Fetches a resource that doesn't exist. This may or may not generate a NEL118 * report, depending on whether you've already successfully requested a resource119 * from the same origin that included a NEL policy.120 */121function getURLForMissingResource(subdomain) {122 return _getNELResourceURL(subdomain, "nonexistent.png");123}124function fetchMissingResource(subdomain) {125 const url = getURLForMissingResource(subdomain);126 return fetch(url, {mode: "no-cors"});127}128/*129 * Fetches a resource that can be cached without validation.130 */131function getURLForCachedResource(subdomain) {132 return _getNELResourceURL(subdomain, "cached-for-one-minute.png");133}134function fetchCachedResource(subdomain) {135 const url = getURLForCachedResource(subdomain);136 return fetch(url, {mode: "no-cors"});137}138/*139 * Fetches a resource that can be cached but requires validation.140 */141function getURLForValidatedCachedResource(subdomain) {142 return _getNELResourceURL(subdomain, "cached-with-validation.py");143}144function fetchValidatedCachedResource(subdomain) {145 const url = getURLForValidatedCachedResource(subdomain);146 return fetch(url, {mode: "no-cors"});147}148/*149 * Fetches a resource that redirects once before returning a successful150 * response.151 */152function getURLForRedirectedResource(subdomain) {153 return _getNELResourceURL(subdomain, "redirect.py?id="+reportID);154}155function fetchRedirectedResource(subdomain) {156 const url = getURLForRedirectedResource(subdomain);157 return fetch(url, {mode: "no-cors"});158}159/*160 * Fetches resources that clear out any existing Reporting or NEL configurations161 * for all origins that any test case might use.162 */163function getURLForClearingConfiguration(subdomain) {164 return _getNELResourceURL(subdomain, "clear-policy-pass.png?id="+reportID);165}166async function clearReportingAndNELConfigurations(subdomain) {167 await Promise.all([168 fetch(getURLForClearingConfiguration(""), {mode: "no-cors"}),169 fetch(getURLForClearingConfiguration("www"), {mode: "no-cors"}),170 fetch(getURLForClearingConfiguration("www1"), {mode: "no-cors"}),171 fetch(getURLForClearingConfiguration("www2"), {mode: "no-cors"}),172 ]);173 return;174}175async function clearReportingAndNELConfigurationsInIframe(subdomain) {176 await Promise.all([177 clearResourceWithBasicPolicyInIframe(""),178 clearResourceWithBasicPolicyInIframe("www"),179 clearResourceWithBasicPolicyInIframe("www1"),180 clearResourceWithBasicPolicyInIframe("www2"),181 ]);182 return;183}184/*185 * Returns whether all of the fields in obj1 also exist in obj2 with the same186 * values. (Put another way, returns whether obj1 and obj2 are equal, ignoring187 * any extra fields in obj2.)188 */189function _isSubsetOf(obj1, obj2) {190 for (const prop in obj1) {191 if (typeof obj1[prop] === 'object') {192 if (typeof obj2[prop] !== 'object') {193 return false;194 }...
Using AI Code Generation
1wptbLibrary.clearResourceWithBasicPolicyInIframe();2wptbLibrary.clearResourceWithBasicPolicyInIframe();3wptbLibrary.clearResourceWithBasicPolicyInIframe();4wptbLibrary.clearResourceWithBasicPolicyInIframe();5wptbLibrary.clearResourceWithBasicPolicyInIframe();6wptbLibrary.clearResourceWithBasicPolicyInIframe();7wptbLibrary.clearResourceWithBasicPolicyInIframe();8wptbLibrary.clearResourceWithBasicPolicyInIframe();9wptbLibrary.clearResourceWithBasicPolicyInIframe();10wptbLibrary.clearResourceWithBasicPolicyInIframe();11wptbLibrary.clearResourceWithBasicPolicyInIframe();12wptbLibrary.clearResourceWithBasicPolicyInIframe();13wptbLibrary.clearResourceWithBasicPolicyInIframe();
Using AI Code Generation
1wptb.clearResourceWithBasicPolicyInIframe(iframe, 'localStorage');2wptb.clearResourceWithBasicPolicyInIframe(iframe, 'sessionStorage');3wptb.clearResourceWithBasicPolicyInIframe(iframe, 'cookies');4wptb.clearResourceWithBasicPolicy('localStorage');5wptb.clearResourceWithBasicPolicy('sessionStorage');6wptb.clearResourceWithBasicPolicy('cookies');7wptb.clearResourceWithBasicPolicyInIframe(iframe, 'localStorage');8wptb.clearResourceWithBasicPolicyInIframe(iframe, 'sessionStorage');9wptb.clearResourceWithBasicPolicyInIframe(iframe, 'cookies');10wptb.clearResourceWithBasicPolicy('localStorage');11wptb.clearResourceWithBasicPolicy('sessionStorage');12wptb.clearResourceWithBasicPolicy('cookies');13wptb.clearResourceWithBasicPolicyInIframe(iframe, 'localStorage');14wptb.clearResourceWithBasicPolicyInIframe(iframe, 'sessionStorage');15wptb.clearResourceWithBasicPolicyInIframe(iframe, 'cookies');
Using AI Code Generation
1wptb.clearResourceWithBasicPolicyInIframe();2wptb.clearResourceWithBasicPolicyInIframe();3wptb.clearResourceWithBasicPolicyInIframe();4wptb.clearResourceWithBasicPolicyInIframe();5wptb.clearResourceWithBasicPolicyInIframe();6wptb.clearResourceWithBasicPolicyInIframe();7wptb.clearResourceWithBasicPolicyInIframe();8wptb.clearResourceWithBasicPolicyInIframe();9wptb.clearResourceWithBasicPolicyInIframe();10wptb.clearResourceWithBasicPolicyInIframe();11wptb.clearResourceWithBasicPolicyInIframe();
Using AI Code Generation
1var wptdriver = require('wptdriver');2 if (err) {3 console.log('Error clearing resource');4 return;5 }6 console.log('Resource cleared');7});8var wptdriver = require('wptdriver');9 if (err) {10 console.log('Error clearing resource');11 return;12 }13 console.log('Resource cleared');14});15var wptdriver = require('wptdriver');16 if (err) {17 console.log('Error clearing resource');18 return;19 }20 console.log('Resource cleared');21});22var wptdriver = require('wptdriver');23 if (err) {24 console.log('Error clearing resource');25 return;26 }27 console.log('Resource cleared');28});29var wptdriver = require('wptdriver');30 if (err) {31 console.log('Error clearing resource');32 return;33 }34 console.log('Resource cleared');35});
Using AI Code Generation
1import wptb from 'wpt-browsertime';2async function run() {3 const browser = await wptb.launch();4 const page = await browser.newPage();5 await page.waitForTimeout(3000);6 await page.waitForTimeout(3000);7 await browser.close();8}9run();10const wptb = require('wpt-browsertime');11async function clearResourceWithBasicPolicyInIframe(page, url) {12 await page.evaluate(async (url) => {13 const iframe = document.querySelector('iframe');14 const iframeDocument = iframe.contentDocument;15 const iframeWindow = iframe.contentWindow;16 const iframePolicy = new iframeWindow.PermissionsPolicy({17 features: {18 },19 });20 iframeWindow.document.policy = iframePolicy;
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!