Best JavaScript code snippet using wpt
properties.js
Source:properties.js
1/* This Source Code Form is subject to the terms of the Mozilla Public2 * License, v. 2.0. If a copy of the MPL was not distributed with this3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */4function assertOwnDescriptor(object, propertyKey, expected) {5 var desc = Object.getOwnPropertyDescriptor(object, propertyKey);6 if (desc === undefined) {7 assertEq(expected, undefined, "Property shouldn't be present");8 return;9 }10 assertEq(desc.enumerable, expected.enumerable, `${String(propertyKey)}.[[Enumerable]]`);11 assertEq(desc.configurable, expected.configurable, `${String(propertyKey)}.[[Configurable]]`);12 if (Object.prototype.hasOwnProperty.call(desc, "value")) {13 assertEq(desc.value, expected.value, `${String(propertyKey)}.[[Value]]`);14 assertEq(desc.writable, expected.writable, `${String(propertyKey)}.[[Writable]]`);15 } else {16 assertEq(desc.get, expected.get, `${String(propertyKey)}.[[Get]]`);17 assertEq(desc.set, expected.set, `${String(propertyKey)}.[[Set]]`);18 }19}20function* generator(){}21var GeneratorFunctionPrototype = Object.getPrototypeOf(generator);22var GeneratorFunction = GeneratorFunctionPrototype.constructor;23var GeneratorPrototype = GeneratorFunctionPrototype.prototype;24// ES2017, 25.2.2 Properties of the GeneratorFunction Constructor25assertEqArray(Object.getOwnPropertyNames(GeneratorFunction).sort(), ["length", "name", "prototype"]);26assertEqArray(Object.getOwnPropertySymbols(GeneratorFunction), []);27assertOwnDescriptor(GeneratorFunction, "length", {28 value: 1, writable: false, enumerable: false, configurable: true29});30assertOwnDescriptor(GeneratorFunction, "name", {31 value: "GeneratorFunction", writable: false, enumerable: false, configurable: true32});33assertOwnDescriptor(GeneratorFunction, "prototype", {34 value: GeneratorFunctionPrototype, writable: false, enumerable: false, configurable: false35});36// ES2017, 25.2.3 Properties of the GeneratorFunction Prototype Object37assertEqArray(Object.getOwnPropertyNames(GeneratorFunctionPrototype).sort(), ["constructor", "prototype"]);38assertEqArray(Object.getOwnPropertySymbols(GeneratorFunctionPrototype), [Symbol.toStringTag]);39assertOwnDescriptor(GeneratorFunctionPrototype, "constructor", {40 value: GeneratorFunction, writable: false, enumerable: false, configurable: true41});42assertOwnDescriptor(GeneratorFunctionPrototype, "prototype", {43 value: GeneratorPrototype, writable: false, enumerable: false, configurable: true44});45assertOwnDescriptor(GeneratorFunctionPrototype, Symbol.toStringTag, {46 value: "GeneratorFunction", writable: false, enumerable: false, configurable: true47});48// ES2017, 25.2.4 GeneratorFunction Instances49assertEqArray(Object.getOwnPropertyNames(generator).sort(), ["length", "name", "prototype"]);50assertEqArray(Object.getOwnPropertySymbols(generator), []);51assertOwnDescriptor(generator, "length", {52 value: 0, writable: false, enumerable: false, configurable: true53});54assertOwnDescriptor(generator, "name", {55 value: "generator", writable: false, enumerable: false, configurable: true56});57assertOwnDescriptor(generator, "prototype", {58 value: generator.prototype, writable: true, enumerable: false, configurable: false59});60// ES2017, 25.3.1 Properties of Generator Prototype61assertEqArray(Object.getOwnPropertyNames(GeneratorPrototype).sort(), ["constructor", "next", "return", "throw"]);62assertEqArray(Object.getOwnPropertySymbols(GeneratorPrototype), [Symbol.toStringTag]);63assertOwnDescriptor(GeneratorPrototype, "constructor", {64 value: GeneratorFunctionPrototype, writable: false, enumerable: false, configurable: true65});66assertOwnDescriptor(GeneratorPrototype, "next", {67 value: GeneratorPrototype.next, writable: true, enumerable: false, configurable: true68});69assertOwnDescriptor(GeneratorPrototype, "return", {70 value: GeneratorPrototype.return, writable: true, enumerable: false, configurable: true71});72assertOwnDescriptor(GeneratorPrototype, "throw", {73 value: GeneratorPrototype.throw, writable: true, enumerable: false, configurable: true74});75assertOwnDescriptor(GeneratorPrototype, Symbol.toStringTag, {76 value: "Generator", writable: false, enumerable: false, configurable: true77});78if (typeof reportCompare == "function")...
prototype.js
Source:prototype.js
1// Copyright (C) 2013 the V8 project authors. All rights reserved.2// This code is governed by the BSD license found in the LICENSE file.3/*---4es6id: 25.2.3.25description: >6 The value of GeneratorFunction.prototype.prototype is the7 %GeneratorPrototype% intrinsic object.8 This property has the attributes { [[Writable]]: false, [[Enumerable]]:9 false, [[Configurable]]: true }.10includes: [propertyHelper.js]11features: [generators]12---*/13var GeneratorFunctionPrototype = Object.getPrototypeOf(function*() {});14assert.sameValue(15 GeneratorFunctionPrototype.prototype,16 Object.getPrototypeOf(function*() {}.prototype)17);18verifyNotEnumerable(GeneratorFunctionPrototype, 'prototype');19verifyNotWritable(GeneratorFunctionPrototype, 'prototype');20verifyConfigurable(GeneratorFunctionPrototype, 'prototype');...
Using AI Code Generation
1var g = new GeneratorFunctionPrototype('a', 'yield a * 2');2var iterator = g(10);3assert.sameValue(iterator.next().value, 20);4assert.sameValue(iterator.next().done, true);5var g = new GeneratorFunctionPrototype('a', 'yield* [a * 2]');6var iterator = g(10);7assert.sameValue(iterator.next().value, 20);8assert.sameValue(iterator.next().done, true);9var g = new GeneratorFunctionPrototype('a', 'b', 'yield* [a * 2, b * 3]');10var iterator = g(10, 20);11assert.sameValue(iterator.next().value, 20);12assert.sameValue(iterator.next().value, 60);13assert.sameValue(iterator.next().done, true);14var g = new GeneratorFunctionPrototype('a', 'b', 'yield* [a * 2, b * 3]');15var iterator = g(10, 20);16assert.sameValue(iterator.next().value, 20);17assert.sameValue(iterator.next().value, 60);18assert.sameValue(iterator.next().done, true);19var g = new GeneratorFunctionPrototype('a', 'b', 'yield* [a * 2, b * 3]');20var iterator = g(10, 20);21assert.sameValue(iterator.next().value, 20);22assert.sameValue(iterator.next().value, 60);23assert.sameValue(iterator.next().done, true);24var g = new GeneratorFunctionPrototype('a', 'b', 'yield* [a * 2, b * 3]');25var iterator = g(10, 20);26assert.sameValue(iterator.next().value, 20);27assert.sameValue(iterator.next().value, 60);28assert.sameValue(iterator.next().done, true);29var g = new GeneratorFunctionPrototype('a', 'b', 'yield* [a * 2, b * 3
Using AI Code Generation
1function* gen() {2 yield 1;3 yield 2;4 yield 3;5}6var g = gen();7console.log(g.next());8console.log(g.next());9console.log(g.next());10console.log(g.next());11console.log(g.next());
Using AI Code Generation
1var GeneratorFunctionPrototype = Object.getPrototypeOf(function*(){}).prototype;2var GeneratorFunctionPrototypeSymbolIterator = GeneratorFunctionPrototype[Symbol.iterator];3var GeneratorFunctionPrototypeNext = GeneratorFunctionPrototype.next;4var GeneratorFunctionPrototypeReturn = GeneratorFunctionPrototype.return;5var GeneratorFunctionPrototypeThrow = GeneratorFunctionPrototype.throw;6function* g() {7 yield 1;8 yield 2;9 yield 3;10}11var iter = g();12var result;13result = GeneratorFunctionPrototypeSymbolIterator.call(iter);14assert.sameValue(result, iter, 'GeneratorFunctionPrototype[Symbol.iterator] returns the iterator itself');15result = GeneratorFunctionPrototypeNext.call(iter, 4);16assert.sameValue(result.value, 4, 'GeneratorFunctionPrototype.next returns the value passed as argument');17assert.sameValue(result.done, false, 'GeneratorFunctionPrototype.next returns the done property as false');18result = GeneratorFunctionPrototypeNext.call(iter);19assert.sameValue(result.value, 2, 'GeneratorFunctionPrototype.next returns the next value');20assert.sameValue(result.done, false, 'GeneratorFunctionPrototype.next returns the done property as false');21result = GeneratorFunctionPrototypeReturn.call(iter, 5);22assert.sameValue(result.value, 5, 'GeneratorFunctionPrototype.return returns the value passed as argument');23assert.sameValue(result.done, true, 'GeneratorFunctionPrototype.return returns the done property as true');24result = GeneratorFunctionPrototypeNext.call(iter);25assert.sameValue(result.value, undefined, 'GeneratorFunctionPrototype.next returns undefined after the iterator is closed');26assert.sameValue(result.done, true, 'GeneratorFunctionPrototype.next returns the done property as true');27result = GeneratorFunctionPrototypeThrow.call(iter, 6);28assert.sameValue(result.value, undefined, 'GeneratorFunctionPrototype.throw returns undefined after the iterator is closed');29assert.sameValue(result.done, true, 'GeneratorFunctionPrototype.throw returns the done property as true');
Using AI Code Generation
1var GeneratorFunctionPrototype = Object.getPrototypeOf(function*(){}).constructor.prototype;2var g = GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }());3assert.sameValue(g.value, 1, 'GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }()).value');4assert.sameValue(g.done, false, 'GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }()).done');5var g = GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }(), 0);6assert.sameValue(g.value, 2, 'GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }(), 0).value');7assert.sameValue(g.done, false, 'GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }(), 0).done');8var g = GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }(), 1);9assert.sameValue(g.value, 3, 'GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }(), 1).value');10assert.sameValue(g.done, false, 'GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }(), 1).done');11var g = GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }(), 2);12assert.sameValue(g.value, undefined, 'GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }(), 2).value');13assert.sameValue(g.done, true, 'GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }(), 2).done');14var g = GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }(), 3);15assert.sameValue(g.value, undefined, 'GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2; yield 3; }(), 3).value');16assert.sameValue(g.done, true, 'GeneratorFunctionPrototype.next.call(function*(){ yield 1; yield 2
Using AI Code Generation
1function* test() {2 yield;3}4function* test() {5 yield;6}7function* test() {8 yield;9}10function* test() {11 yield;12}13function* test() {14 yield;15}
Using AI Code Generation
1const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;2const GeneratorFunctionPrototypeMethod = Object.getOwnPropertyDescriptor(GeneratorFunctionPrototype, 'method').value;3const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;4const GeneratorFunctionPrototypeMethod = Object.getOwnPropertyDescriptor(GeneratorFunctionPrototype, 'method').value;5const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;6const GeneratorFunctionPrototypeMethod = Object.getOwnPropertyDescriptor(GeneratorFunctionPrototype, 'method').value;7const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;8const GeneratorFunctionPrototypeMethod = Object.getOwnPropertyDescriptor(GeneratorFunctionPrototype, 'method').value;9const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;10const GeneratorFunctionPrototypeMethod = Object.getOwnPropertyDescriptor(GeneratorFunctionPrototype, 'method').value;11const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;12const GeneratorFunctionPrototypeMethod = Object.getOwnPropertyDescriptor(GeneratorFunctionPrototype, 'method').value;13const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;14const GeneratorFunctionPrototypeMethod = Object.getOwnPropertyDescriptor(GeneratorFunctionPrototype, 'method').value;15const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;16const GeneratorFunctionPrototypeMethod = Object.getOwnPropertyDescriptor(GeneratorFunctionPrototype, 'method').value;17const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;18const GeneratorFunctionPrototypeMethod = Object.getOwnPropertyDescriptor(GeneratorFunctionPrototype, 'method').value;19const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;20const GeneratorFunctionPrototypeMethod = Object.getOwnPropertyDescriptor(GeneratorFunctionPrototype, 'method').value;21const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;22const GeneratorFunctionPrototypeMethod = Object.getOwnPropertyDescriptor(GeneratorFunctionPrototype, 'method').value;23const GeneratorFunctionPrototype = Object.getPrototypeOf(function* () {}).prototype;
Using AI Code Generation
1var GeneratorFunctionPrototype = Object.getPrototypeOf(function*(){}).prototype;2var GeneratorFunctionPrototypeTest = GeneratorFunctionPrototype.test;3var test = GeneratorFunctionPrototypeTest;4function* g() {5 yield 1;6 yield 2;7 yield 3;8}9var iterator = g();10var result;11result = iterator.next();12assert.sameValue(result.value, 1, "First result `value`");13assert.sameValue(result.done, false, "First result `done` flag");14result = iterator.next();15assert.sameValue(result.value, 2, "Second result `value`");16assert.sameValue(result.done, false, "Second result `done` flag");17result = iterator.next();18assert.sameValue(result.value, 3, "Third result `value`");19assert.sameValue(result.done, false, "Third result `done` flag");20result = iterator.next();21assert.sameValue(result.value, undefined, "Fourth result `value`");22assert.sameValue(result.done, true, "Fourth result `done` flag");23var iterated = false;24for (var x of g()) {25 iterated = true;26 assert.sameValue(x, 1, "Result of evaluating first `for-of` loop body");27 break;28}29assert(iterated, "First `for-of` body evaluated");30iterated = false;31for (var x of g()) {32 iterated = true;33 assert.sameValue(x, 2, "Result of evaluating second `for-of` loop body");34 break;35}36assert(iterated, "Second `for-of` body evaluated");37iterated = false;38for (var x of g()) {39 iterated = true;40 assert.sameValue(x, 3, "Result of evaluating third `for-of` loop body");41 break;42}43assert(iterated, "Third `for-of` body evaluated");44iterated = false;45for (var x of g()) {46 iterated = true;47 assert.sameValue(x, undefined, "Result of evaluating fourth `for-of` loop body");48 break;49}50assert(iterated, "Fourth `for-of` body evaluated");51var iterated = false;52for (var x of g()) {53 iterated = true;54 assert.sameValue(x, 1, "Result of evaluating first `for-of` loop body (iteration mode)");55 break;56}57assert(iterated, "First `for-of` body evaluated (iteration
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!!