Best JavaScript code snippet using wpt
03-async-parallel-hook.js
Source:03-async-parallel-hook.js
...39 // onResult40 // onDone41}4243function parallelPromiseTest() {44 console.log('parallelPromiseTest')4546 let queue2 = new AsyncParallelHook(['name']);47 console.time('cost2');48 queue2.tapPromise('1', function (name) {49 return new Promise(function (resolve, reject) {50 setTimeout(() => {51 console.log(name, 1);52 resolve('1');53 }, 2000);54 });55 });56 57 queue2.tapPromise('2', function (name) {58 return new Promise(function (resolve, reject) {59 setTimeout(() => {60 console.log(name, 2);61 resolve('2');62 // reject('error')63 }, 1000);64 });65 });66 // //åæ ·å¯ä»¥è¢«è§¦å67 // queue2.tapAsync('3', function (name, cb) { 68 // setTimeout(() => {69 // console.log('3:',name);70 // cb(null,'3');71 // // cb('errpr','2'); // åºéç»ææ§è¡72 // }, 3000);73 // });74 75 76 queue2.promise('tapPromise')77 .then((al) => {78 console.log('over',al);79 console.timeEnd('cost2');80 }, (err) => {81 console.log('error',err);82 console.timeEnd('cost2');83 });84}8586function parallelBailTest() {87 console.log(`parallelBailTest`)8889 let queue3 = new AsyncParallelBailHook(['name']);90 console.time('cost3');91 92 queue3.tapAsync('1',(name,cb)=>{93 setTimeout(() => {94 console.log(name, 1);95 cb()96 }, 1000); 97 })98 queue3.tapAsync('2',(name,cb)=>{99 setTimeout(() => {100 console.log(name, 2);101 cb(null,'2');102 }, 2000); 103 });104 105 queue3.tapAsync('3',(name,cb)=>{106 setTimeout(() => {107 console.log(name, 3);108 cb();109 }, 3500); 110 });111112 queue3.callAsync('bail tapAsync',(err,res)=>{113 console.log('over' + res);114 console.timeEnd('cost3');115 })116}117118function parallelBailPromiseTest() {119 console.log(`parallelBailPromiseTest`)120 //带å¯ä¸åæ°name121 let queue4 = new AsyncParallelBailHook(['name']);122 123 console.time('cost4');124 queue4.tapPromise('1', function (name) {125 return new Promise(function (resolve, reject) {126 setTimeout(() => {127 console.log(name, 1);128 //done129 resolve('1');130 }, 1000);131 });132 });133 134 135 queue4.tapPromise('2', function (name) {136 return new Promise(function (resolve, reject) {137 setTimeout(() => {138 console.log(name, 2);139 resolve()140 resolve('1')//æè¿åå¼ä¼ç´æ¥ç»æè¿ç¨è¿å
¥then141 // reject('error')142 }, 2000);143 });144 });145 146 queue4.tapPromise('3', function (name) {147 return new Promise(function (resolve, reject) {148 setTimeout(() => {149 console.log(name, 3);150 resolve();151 }, 3000);152 });153 });154 155 156 157 //è°ç¨158 queue4.promise('bail tapPromise')159 .then((res) => {160 console.log('over',res);161 console.timeEnd('cost4');162 }, (error) => {163 console.log('error',error);164 console.timeEnd('cost4');165 });166}167168// parallelTest()169// parallelPromiseTest()170// parallelBailTest()
...
beacon-basic.https.window.js
Source:beacon-basic.https.window.js
...3// META: script=beacon-common.sub.js4'use strict';5// TODO(yhirano): Check the sec-fetch-mode request header once WebKit supports6// the feature.7parallelPromiseTest(async (t) => {8 const iframe = document.createElement('iframe');9 document.body.appendChild(iframe);10 t.add_cleanup(() => iframe.remove());11 const id = token();12 const url = `/beacon/resources/beacon.py?cmd=store&id=${id}`;13 assert_true(iframe.contentWindow.navigator.sendBeacon(url));14 iframe.remove();15 const result = await waitForResult(id);16 assert_equals(result.type, '(missing)', 'content-type');17}, `simple case: with no payload`);18parallelPromiseTest(async (t) => {19 const iframe = document.createElement('iframe');20 document.body.appendChild(iframe);21 t.add_cleanup(() => iframe.remove());22 const id = token();23 const url = `/beacon/resources/beacon.py?cmd=store&id=${id}`;24 assert_true(iframe.contentWindow.navigator.sendBeacon(url, null));25 iframe.remove();26 const result = await waitForResult(id);27 assert_equals(result.type, '(missing)', 'content-type');28}, `simple case: with null payload`);29for (const size of [EMPTY, SMALL, LARGE, MAX]) {30 for (const type of [STRING, ARRAYBUFFER, FORM, BLOB]) {31 if (size === MAX && type === FORM) {32 // It is difficult to estimate the size of a form accurately, so we cannot33 // test this case.34 continue;35 }36 parallelPromiseTest(async (t) => {37 const iframe = document.createElement('iframe');38 document.body.appendChild(iframe);39 t.add_cleanup(() => iframe.remove());40 const payload = makePayload(size, type);41 const id = token();42 const url = `/beacon/resources/beacon.py?cmd=store&id=${id}`;43 assert_true(iframe.contentWindow.navigator.sendBeacon(url, payload));44 iframe.remove();45 const result = await waitForResult(id);46 if (getContentType(type) === null) {47 assert_equals(result.type, '(missing)', 'content-type');48 } else {49 assert_true(result.type.includes(getContentType(type)), 'content-type');50 }51 }, `simple case: type = ${type} and size = ${size}`);52 }53}54for (const type of [STRING, ARRAYBUFFER, FORM, BLOB]) {55 parallelPromiseTest(async (t) => {56 const iframe = document.createElement('iframe');57 document.body.appendChild(iframe);58 t.add_cleanup(() => iframe.remove());59 const payload = makePayload(TOOLARGE, type);60 const id = token();61 const url = `/beacon/resources/beacon.py?cmd=store&id=${id}`;62 assert_false(iframe.contentWindow.navigator.sendBeacon(url, payload));63 }, `Too large payload should be rejected: type = ${type}`);64}65for (const type of [STRING, ARRAYBUFFER, BLOB]) {66 parallelPromiseTest(async (t) => {67 const iframe = document.createElement('iframe');68 document.body.appendChild(iframe);69 t.add_cleanup(() => iframe.remove());70 assert_true(iframe.contentWindow.navigator.sendBeacon(71 `/beacon/resources/beacon.py?cmd=store&id=${token()}`,72 makePayload(MAX, type)));73 assert_true(iframe.contentWindow.navigator.sendBeacon(74 `/beacon/resources/beacon.py?cmd=store&id=${token()}`, ''));75 assert_false(iframe.contentWindow.navigator.sendBeacon(76 `/beacon/resources/beacon.py?cmd=store&id=${token()}`, 'x'));77 }, `Payload size restriction should be accumulated: type = ${type}`);78}79test(() => {80 assert_throws_js(...
Using AI Code Generation
1var wpt = require('wpt');2var wpt = new WebPageTest('www.webpagetest.org', 'A.123456789012345678901234567890123456789');3wpt.parallelPromiseTest(urls, { location: 'Dulles:Chrome', runs: 3, video: true, pollResults: 5, firstViewOnly: true })4 .then(function (data) {5 console.log(data);6 })7 .catch(function (err) {8 console.log(err);9 });
Using AI Code Generation
1var wptool = require('./wptool.js');2var test = new wptool();3var Promise = require('bluebird');4var request = require('request');5function parallelPromiseTest(numberOfRequests, delay, url) {6 var promises = [];7 for (var i = 0; i < numberOfRequests; i++) {8 promises.push(9 new Promise(function(resolve, reject) {10 setTimeout(function() {11 request(url, function(error, response, body) {12 if (error) {13 reject(error);14 } else {15 resolve(body);16 }17 });18 }, delay);19 })20 );21 }22 Promise.all(promises).then(function(values) {23 console.log(values);24 });25}
Using AI Code Generation
1var wpt = require('wpt').createWpt('API_KEY');2var parallelPromiseTest = require('wpt').parallelPromiseTest;3parallelPromiseTest(wpt);4var wpt = require('wpt').createWpt('API_KEY');5var parallelPromiseTest = require('wpt').parallelPromiseTest;6parallelPromiseTest(wpt, {timeout: 30000});7MIT © [Sudhanshu Yadav](
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!!