Best JavaScript code snippet using testcafe
monadic.js
Source:monadic.js  
...48    return { size: Math.sqrt(x * x + y * y) }49  }50})51Test(() => typeof vecLength).shouldBeJSON('function')52Test(() => vecLength({x: 0, y: 0})).shouldBeJSON({size: 0})53Test(() => vecLength()).shouldBeJSON({size: 0})54Test(() => vecLength({x: false, y: 0})).shouldBeInstanceOf(Error)55Test(() => vecLength({x: 3, y: 4})).shouldBeJSON({size: 5})56Test(() => vecLength({x: 3})).shouldBeJSON({size: 3})57Test(() => vecLength({y: 17})).shouldBeJSON({size: 17})58Test(() => vecLength({x: 3, y: false})).shouldBeInstanceOf(Error)59Test(() => vecLength({x: 3, y: '4'})).shouldBeInstanceOf(Error)60Test(() => true).shouldBe(true)61const asyncAdd = monadic({62  inputType: {x: 0},63  outputType: {x: 1},64  func: async ({x}) => ({x: x + 1})65})66Test(() => asyncAdd.constructor).shouldBe((async () => {}).constructor)67Test(() => asyncAdd({x: 2})).shouldBeJSON({x: 3})68Test(() => asyncAdd(Promise.resolve({x: 2}))).shouldBeJSON({x: 3})69const mult = monadic({70  defaultInput: {71    a: 0,72    b: 173  },...fruchterman.js
Source:fruchterman.js  
1/**2 * @fileOverview random layout3 * @author shiwu.wyy@antfin.com4 */5const Layout = require('./layout')6const SPEED_DIVISOR = 8007/**8 * fruchterman ä½å±9 */10Layout.registerLayout('fruchterman', {11  getDefaultCfg() {12    return {13      maxIteration: 1000, // 忢ç代çæå¤§ç代æ¸14      center: [0, 0], // ä½å±ä¸å¿15      gravity: 10, // éå大å°ï¼å½±é¿åçç·æ¹ç¨åº¦16      speed: 1, // é度17      clustering: false, // æ¯å¦ç¢çèé¡å18      clusterGravity: 10 // èé¡å大å°19    }20  },21  /**22   * å·è¡ä½å±23   */24  execute() {25    const self = this26    const nodes = self.nodes27    const center = self.center28    if (nodes.length === 0) {29      return30    } else if (nodes.length === 1) {31      nodes[0].x = center[0]32      nodes[0].y = center[1]33      return34    }35    const nodeMap = new Map()36    const nodeIndexMap = new Map()37    nodes.forEach((node, i) => {38      nodeMap.set(node.id, node)39      nodeIndexMap.set(node.id, i)40    })41    self.nodeMap = nodeMap42    self.nodeIndexMap = nodeIndexMap43    // layout44    self.run()45  },46  run() {47    const self = this48    const nodes = self.nodes49    const edges = self.edges50    const maxIteration = self.maxIteration51    let width = self.width52    if (!width && typeof window !== 'undefined') {53      width = window.innerWidth54    }55    let height = self.height56    if (!height && typeof height !== 'undefined') {57      height = window.innerHeight58    }59    const center = self.center60    const nodeMap = self.nodeMap61    const nodeIndexMap = self.nodeIndexMap62    const maxDisplace = width / 1063    const k = Math.sqrt(width * height / (nodes.length + 1))64    const gravity = self.gravity65    const speed = self.speed66    const clustering = self.clustering67    const clusterMap = new Map()68    if (clustering) {69      nodes.forEach(n => {70        if (clusterMap.get(n.cluster) === undefined) {71          const cluster = {72            name: n.cluster,73            cx: 0,74            cy: 0,75            count: 076          }77          clusterMap.set(n.cluster, cluster)78        }79        const c = clusterMap.get(n.cluster)80        c.cx += n.x81        c.cy += n.y82        c.count++83      })84      clusterMap.forEach(c => {85        c.cx /= c.count86        c.cy /= c.count87      })88    }89    for (let i = 0; i < maxIteration; i++) {90      const disp = []91      nodes.forEach((n, i) => {92        disp[i] = { x: 0, y: 0 }93      })94      self.getDisp(nodes, edges, nodeMap, nodeIndexMap, disp, k)95      // gravity for clusters96      if (clustering) {97        const clusterGravity = self.clusterGravity || gravity98        nodes.forEach((n, i) => {99          const c = clusterMap.get(n.cluster)100          const distLength = Math.sqrt((n.x - c.cx) * (n.x - c.cx) + (n.y - c.cy) * (n.y - c.cy))101          const gravityForce = k * clusterGravity102          disp[i].x -= gravityForce * (n.x - c.cx) / distLength103          disp[i].y -= gravityForce * (n.y - c.cy) / distLength104        })105        clusterMap.forEach(c => {106          c.cx = 0107          c.cy = 0108          c.count = 0109        })110        nodes.forEach(n => {111          const c = clusterMap.get(n.cluster)112          c.cx += n.x113          c.cy += n.y114          c.count++115        })116        clusterMap.forEach(c => {117          c.cx /= c.count118          c.cy /= c.count119        })120      }121      // gravity122      nodes.forEach((n, i) => {123        const gravityForce = 0.01 * k * gravity124        disp[i].x -= gravityForce * (n.x - center[0])125        disp[i].y -= gravityForce * (n.y - center[1])126      })127      // speed128      nodes.forEach((n, i) => {129        disp[i].dx *= speed / SPEED_DIVISOR130        disp[i].dy *= speed / SPEED_DIVISOR131      })132      // move133      nodes.forEach((n, i) => {134        const distLength = Math.sqrt(disp[i].x * disp[i].x + disp[i].y * disp[i].y)135        if (distLength > 0) { // && !n.isFixed()136          const limitedDist = Math.min(maxDisplace * (speed / SPEED_DIVISOR), distLength)137          n.x += disp[i].x / distLength * limitedDist138          n.y += disp[i].y / distLength * limitedDist139        }140      })141    }142  },143  getDisp(nodes, edges, nodeMap, nodeIndexMap, disp, k) {144    const self = this145    self.calRepulsive(nodes, disp, k)146    self.calAttractive(edges, nodeMap, nodeIndexMap, disp, k)147  },148  calRepulsive(nodes, disp, k) {149    nodes.forEach((v, i) => {150      disp[i] = { x: 0, y: 0 }151      nodes.forEach((u, j) => {152        if (i === j) return153        const vecx = v.x - u.x154        const vecy = v.y - u.y155        let vecLengthSqr = vecx * vecx + vecy * vecy156        if (vecLengthSqr === 0) vecLengthSqr = 1157        const common = (k * k) / vecLengthSqr158        disp[i].x += vecx * common159        disp[i].y += vecy * common160      })161    })162  },163  calAttractive(edges, nodeMap, nodeIndexMap, disp, k) {164    edges.forEach(e => {165      const uIndex = nodeIndexMap.get(e.source)166      const vIndex = nodeIndexMap.get(e.target)167      if (uIndex === vIndex) return168      const u = nodeMap.get(e.source)169      const v = nodeMap.get(e.target)170      const vecx = v.x - u.x171      const vecy = v.y - u.y172      const vecLength = Math.sqrt(vecx * vecx + vecy * vecy)173      const common = vecLength * vecLength / k174      disp[vIndex].x -= vecx / vecLength * common175      disp[vIndex].y -= vecy / vecLength * common176      disp[uIndex].x += vecx / vecLength * common177      disp[uIndex].y += vecy / vecLength * common178    })179  }...radialNonoverlapForce.js
Source:radialNonoverlapForce.js  
1"use strict";2Object.defineProperty(exports, "__esModule", {3  value: true4});5exports.default = void 0;6var SPEED_DIVISOR = 800;7var RadialNonoverlapForce =8/** @class */9function () {10  function RadialNonoverlapForce(params) {11    this.disp = [];12    this.positions = params.positions;13    this.adjMatrix = params.adjMatrix;14    this.focusID = params.focusID;15    this.radii = params.radii;16    this.iterations = params.iterations || 10;17    this.height = params.height || 10;18    this.width = params.width || 10;19    this.speed = params.speed || 100;20    this.gravity = params.gravity || 10;21    this.nodeSizeFunc = params.nodeSizeFunc;22    this.k = params.k || 5;23    this.strictRadial = params.strictRadial;24    this.nodes = params.nodes;25  }26  RadialNonoverlapForce.prototype.layout = function () {27    var self = this;28    var positions = self.positions;29    var disp = [];30    var iterations = self.iterations;31    var maxDisplace = self.width / 10;32    self.maxDisplace = maxDisplace;33    self.disp = disp;34    for (var i = 0; i < iterations; i++) {35      positions.forEach(function (_, k) {36        disp[k] = {37          x: 0,38          y: 039        };40      }); // ç»éå çèç¹å¢å æ¥å41      self.getRepulsion();42      self.updatePositions();43    }44    return positions;45  };46  RadialNonoverlapForce.prototype.getRepulsion = function () {47    var self = this;48    var positions = self.positions;49    var nodes = self.nodes;50    var disp = self.disp;51    var k = self.k;52    var radii = self.radii || [];53    positions.forEach(function (v, i) {54      disp[i] = {55        x: 0,56        y: 057      };58      positions.forEach(function (u, j) {59        if (i === j) {60          return;61        } // v and u are not on the same circle, return62        if (radii[i] !== radii[j]) {63          return;64        }65        var vecx = v[0] - u[0];66        var vecy = v[1] - u[1];67        var vecLength = Math.sqrt(vecx * vecx + vecy * vecy);68        if (vecLength === 0) {69          vecLength = 1;70          var sign = i > j ? 1 : -1;71          vecx = 0.01 * sign;72          vecy = 0.01 * sign;73        } // these two nodes overlap74        if (vecLength < self.nodeSizeFunc(nodes[i]) / 2 + self.nodeSizeFunc(nodes[j]) / 2) {75          var common = k * k / vecLength;76          disp[i].x += vecx / vecLength * common;77          disp[i].y += vecy / vecLength * common;78        }79      });80    });81  };82  RadialNonoverlapForce.prototype.updatePositions = function () {83    var self = this;84    var positions = self.positions;85    var disp = self.disp;86    var speed = self.speed;87    var strictRadial = self.strictRadial;88    var f = self.focusID;89    var maxDisplace = self.maxDisplace || self.width / 10;90    if (strictRadial) {91      disp.forEach(function (di, i) {92        var vx = positions[i][0] - positions[f][0];93        var vy = positions[i][1] - positions[f][1];94        var vLength = Math.sqrt(vx * vx + vy * vy);95        var vpx = vy / vLength;96        var vpy = -vx / vLength;97        var diLength = Math.sqrt(di.x * di.x + di.y * di.y);98        var alpha = Math.acos((vpx * di.x + vpy * di.y) / diLength);99        if (alpha > Math.PI / 2) {100          alpha -= Math.PI / 2;101          vpx *= -1;102          vpy *= -1;103        }104        var tdispLength = Math.cos(alpha) * diLength;105        di.x = vpx * tdispLength;106        di.y = vpy * tdispLength;107      });108    } // move109    var radii = self.radii;110    positions.forEach(function (n, i) {111      if (i === f) {112        return;113      }114      var distLength = Math.sqrt(disp[i].x * disp[i].x + disp[i].y * disp[i].y);115      if (distLength > 0 && i !== f) {116        var limitedDist = Math.min(maxDisplace * (speed / SPEED_DIVISOR), distLength);117        n[0] += disp[i].x / distLength * limitedDist;118        n[1] += disp[i].y / distLength * limitedDist;119        if (strictRadial) {120          var vx = n[0] - positions[f][0];121          var vy = n[1] - positions[f][1];122          var nfDis = Math.sqrt(vx * vx + vy * vy);123          vx = vx / nfDis * radii[i];124          vy = vy / nfDis * radii[i];125          n[0] = positions[f][0] + vx;126          n[1] = positions[f][1] + vy;127        }128      }129    });130  };131  return RadialNonoverlapForce;132}();133var _default = RadialNonoverlapForce;...boat.js
Source:boat.js  
1let c = 11;2let cw = window.innerWidth/c;3let rightPressed, leftPressed, downPressed, upPressed;4let mx = 0;5let my = 0;6let gameOver = false;7class Boat {8    constructor() {9        this.elem = document.getElementById("boat");10        this.elem.style.width = `${cw*0.75}px`;11        this.x = 100;12        this.y = window.innerHeight/2;13        this.speed = 4;14    }15    move() {16        // Keyboard Control17        if (rightPressed) {18            this.x += this.speed;19            this.elem.style.transform = "translate(-50%, -50%) scaleX(1)";20        }21        if (leftPressed) {22            this.x -= this.speed;23            this.elem.style.transform = "translate(-50%, -50%) scaleX(-1)";24        }25        if (upPressed) {26            this.y -= this.speed;27        }28        if (downPressed) {29            this.y += this.speed;30        }31        // Mouse Control32        /*33        // Find the direction vector, then normalize34        let dx = mx-this.x;35        let dy = my-this.y;36        let vecLength = Math.sqrt(dx*dx + dy*dy + 0.01);37        let vec = [dx/vecLength, dy/vecLength];38        // console.log(mx, my, dx, dy, this.x, this.y, vecLength, vec);39        if (vecLength > 3) {40            this.x += vec[0]*this.speed;41            this.y += vec[1]*this.speed;42        }43        */44        this.x = Math.max(0, Math.min(window.innerWidth, this.x));45        this.y = Math.max(0, Math.min(window.innerHeight, this.y));46        this.elem.style.left = `${this.x}px`;47        this.elem.style.top = `${this.y}px`;48        if (!gameOver) {49            requestAnimationFrame(this.move.bind(this));50        }51        52    }53}54function keyDownHandler(event) {55    if(event.keyCode == 39) {56        rightPressed = true;57    }58    else if(event.keyCode == 37) {59        leftPressed = true;60    }61    if(event.keyCode == 40) {62    	downPressed = true;63    }64    else if(event.keyCode == 38) {65    	upPressed = true;66    }67    else if(event.keyCode == 65) {68        leftPressed = true;69    }70    else if(event.keyCode == 87) {71        upPressed = true;72    }73    else if(event.keyCode == 83) {74        downPressed = true;75    }76    else if(event.keyCode == 68) {77        rightPressed = true;78    }79}80function keyUpHandler(event) {81    if(event.keyCode == 39) {82        rightPressed = false;83    }84    else if(event.keyCode == 37) {85        leftPressed = false;86    }87    if(event.keyCode == 40) {88    	downPressed = false;89    }90    else if(event.keyCode == 38) {91    	upPressed = false;92    }93    else if(event.keyCode == 65) {94        leftPressed = false;95    }96    else if(event.keyCode == 87) {97        upPressed = false;98    }99    else if(event.keyCode == 83) {100        downPressed = false;101    }102    else if(event.keyCode == 68) {103        rightPressed = false;104    }105}106onmousemove = function(e){107    mx = e.clientX;108    my = e.clientY;109}110document.addEventListener('keydown', keyDownHandler, false);111document.addEventListener('keyup', keyUpHandler, false);112let boat = new Boat();113boat.move();114let playing = false;115onkeydown = function(e){116    if (!playing) {117        let music = new Audio("assets/music.mp3");118        music.loop = true;119        music.play();120        playing = true;        121    }...sum-vectors.js
Source:sum-vectors.js  
1(() => {2    const {3        AsyncArray,4        add5    } = Homework;6    7    const promisify = (func, ...args) => {8        return new Promise((resolve, reject) => {9            func(...args, resolve);10        });11    };12    13    // ÐÑовеÑка ÑазмеÑов маÑÑивов на коÑÑекÑноÑÑÑ14    async function checkVectorsLength(vec1, vec2) {15        const [vecLength1, vecLength2] = await Promise.all([16            promisify(vec1.length),17            promisify(vec2.length)18        ]);19    20        if (vecLength1 === 0 || vecLength2 === 0) {21            throw "Vectors must have at least one value!"22        }23    24        if (vecLength1 !== vecLength2) {25            throw "Vectors must have the same size!"26        }27    };28    29    async function recursiveVectorsSummation(vec1, vec2, vecSum = new AsyncArray(), vecLength = null, index = 0) {30        // Ðлина маÑÑива31        if (vecLength === null) {32            vecLength = await Promise.all([33                promisify(vec1.length),34                promisify(vec2.length)35            ])36            vecLength = Math.min(...vecLength);37        }38        39        // УÑловие вÑÑ
ода из ÑекÑÑÑии40        if (index === vecLength) {41            return vecSum;42        }43    44        // ÐолÑÑаем по ÑиÑÐ»Ñ Ð¸Ð· каждого маÑÑива45        let [vecNum1, vecNum2] = await Promise.all([46            promisify(vec1.get, index),47            promisify(vec2.get, index)48        ]);49        50        // СкладÑваем полÑÑеннÑе ÑиÑла51        let numSum = await promisify(add, vecNum1, vecNum2);52    53        // ÐапиÑÑваем ÑÑÐ¼Ð¼Ñ Ð² нÑжнÑÑ ÑÑÐµÐ¹ÐºÑ vecSum54        await promisify(vecSum.set, index, numSum);55        56        // УвелиÑиваем Ð¸Ð½Ð´ÐµÐºÑ Ð½Ð° 157        index = await promisify(add, index, 1);58        // РекÑÑÑивно повÑоÑÑм опеÑаÑии вÑÑе, но Ñ ÑвелиÑеннÑм индекÑом59        return recursiveVectorsSummation(vec1, vec2, vecSum, vecLength, index);60    };61    62    window.sumVectors = (vec1, vec2, callback) => {63        // ÐÑовеÑÑем Ð´Ð»Ð¸Ð½Ñ Ð²ÐµÐºÑоÑов и запÑÑкаем ÑекÑÑÑивное ÑÑммиÑование64        checkVectorsLength(vec1, vec2).then(() => {65            return recursiveVectorsSummation(vec1, vec2);66        }).then(callback);67    };...Vector.js
Source:Vector.js  
1define(function () {2	function Vector(arg1, arg2) {		//Vector(x, y), Vector(vec)3		if(typeof arg1 === "object") {4			this.x = arg1.x;5			this.y = arg1.y;6		}7		else {8			this.x = arg1;9			this.y = arg2;10		}11		return this;12	}13	Vector.prototype.getDistance = function(vec) {14		return Math.sqrt((vec.x-this.x)*(vec.x-this.x) + (vec.y-this.y)*(vec.y-this.y));15	}16	Vector.prototype.getLength = function() {17		return Math.sqrt(this.x*this.x + this.y*this.y);18	}19	Vector.prototype.add = function(vec) {20		this.x += vec.x;21		this.y += vec.y;22		return this;23	}24	Vector.prototype.subtract = function(vec) {25		this.x -= vec.x;26		this.y -= vec.y;27		return this;28	}29	Vector.prototype.invert = function() {30		this.x *= -1;31		this.y *= -1;32		return this;33	}34	Vector.prototype.extendBy = function(dl) {35		var length = this.getLength();36		var sin = this.y / length;37		var cos = this.x / length;38		this.x += dl*cos;39		this.y += dl*sin;40		return this;41	}42	Vector.prototype.multiplyBy = function(n) {43		var length = this.getLength();44		if(length !== 0) {45			var newLength = n*length;46			var sin = this.y / length;47			var cos = this.x / length;48			this.x = newLength*cos;49			this.y = newLength*sin;50		}51		return this;52	}53	Vector.prototype.getNormalVector = function(vec) {54		return new Vector(this).subtract(this.getTangentVector(vec));55	}56	Vector.prototype.getTangentVector = function(vec) {57		var vecLength = vec.getLength();58		var L = (this.x*vec.x + this.y*vec.y)/vecLength;59		var cos = vec.x/vecLength;60		var sin = vec.y/vecLength;61		return new Vector(L*cos,L*sin);62	}63	Vector.prototype.multiplyNormalAndTangentComponents = function(referenceVector, tangentMultiplier, normalMultiplier) {64		var vn = this.getTangentVector(referenceVector);65		var vt = this.getNormalVector(referenceVector);66		vt.multiplyBy(tangentMultiplier);67		vn.multiplyBy(normalMultiplier);68		var resultVector = vt.add(vn);69		this.x = resultVector.x;70		this.y = resultVector.y;71		return this;72	}73	Vector.findTheShortestVector = function(vectorsArray) {74		var shortestVector = vectorsArray[0];75		var shortestLength = shortestVector.getLength();76		for(var k = 0; k < vectorsArray.length; k++) {77			var length = vectorsArray[k].getLength();78			if(length < shortestLength) {79				shortestVector = vectorsArray[k];80				shortestLength = length;81			}82		}83		return shortestVector;84	}85	return Vector;...capsNet.js
Source:capsNet.js  
1module.exports = (tf) => {2    const primaryCapsLayer = require('./primaryCapsLayer')(tf);3    const digitCapsLayer = require('./digitCapsLayer')(tf);4    return class CapsNet {5        constructor() {6            const model = tf.sequential();7            model.add(tf.layers.conv2d({8                inputShape: [28, 28, 1],9                filters: 256,10                kernelSize: 9,11                strides: 1,12                padding: 'valid'13            }));14            model.add(new primaryCapsLayer(32, 8));15            model.add(new digitCapsLayer(10, 16));16            this.model = model;17            this.optimizer = tf.train.adam();18        }19        loss(image, label) {20            return this.optimizer.minimize(() => {21                const vecLength = this.model.predict(image);22                const Tk = label;23                let maxL = tf.square(tf.maximum(0, 0.9 - vecLength));24                maxL = tf.reshape(maxL, [batchSize, -1]);25                let maxR = tf.square(tf.maximum(0., vecLength - 0.1));26                maxR = tf.reshape(maxR, [batchSize, -1]);27                const Lk = Tk * maxL + 0.5 * (1 - Tk) * maxR;28                const loss = tf.reduce_mean(tf.reduce_mean(Lk, 1))29                return loss;30            }, true);31        }32        accuracy(image, label) {33            return tf.tidy(() => {34                const vecLength = this.model.predict(image);35                label = tf.squeeze(tf.argmax(label, 1));36                37                const predictions = tf.squeeze(tf.argmax(vecLength, 1));38                const correct = tf.cast(tf.equal(label, predictions));39                const acc = tf.reduce_mean(correct) * 10040                41                return acc;42            })43        }44    }...groups_14.js
Source:groups_14.js  
1var searchData=2[3  ['variance_1141',['variance',['../group__variance.html',1,'']]],4  ['variance_28filter_29_1142',['variance(filter)',['../group__variance__filter.html',1,'']]],5  ['veclength_1143',['vecLength',['../group__shared3p__veclength.html',1,'(Global Namespace)'],['../group__veclength.html',1,'(Global Namespace)']]],6  ['vectorlookup_1144',['vectorLookup',['../group__vectorlookup.html',1,'']]],7  ['vectorupdate_1145',['vectorUpdate',['../group__shared3p__vectorupdate.html',1,'(Global Namespace)'],['../group__vectorupdate.html',1,'(Global Namespace)']]]...Using AI Code Generation
1import { Selector } from 'testcafe';2test('My first test', async t => {3        .typeText('#developer-name', 'John Smith')4        .click('#submit-button')5        .wait(5000);6});7const vecLength = Selector('div').withText('Vector Length');8const vecLengthInput = vecLength.find('input');9const vecLengthSubmit = vecLength.find('button');10const vecLengthResult = vecLength.find('span');11test('Test vecLength', async t => {12        .typeText(vecLengthInput, '5, 7')13        .click(vecLengthSubmit)14        .expect(vecLengthResult.innerText).eql('8.602325267042627');15});16const vecLength = Selector('div').withText('Vector Length');17const vecLengthInput = vecLength.find('input');18const vecLengthSubmit = vecLength.find('button');19const vecLengthResult = vecLength.find('span');20test('Test vecLength', async t => {21        .typeText(vecLengthInput, '5, 7')22        .click(vecLengthSubmit)23        .expect(vecLengthResult.innerText).eql('8.602325267042627');24});25const vecLength = Selector('div').withText('Vector Length');26const vecLengthInput = vecLength.find('input');27const vecLengthSubmit = vecLength.find('button');28const vecLengthResult = vecLength.find('span');29test('Test vecLength', async t => {30        .typeText(vecLengthInput, '5, 7')31        .click(vecLengthSubmit)32        .expect(vecLengthResult.innerText).eql('8.602325267042627');33});34const vecLength = Selector('div').withText('Vector Length');35const vecLengthInput = vecLength.find('input');36const vecLengthSubmit = vecLength.find('button');37const vecLengthResult = vecLength.find('span');38test('Test vecLength', async t => {39        .typeText(vecLengthInput, '5,Using AI Code Generation
1import { Selector } from 'testcafe';2test('My first test', async t => {3    const developerName = Selector('#developer-name');4    const osOption = Selector('#macos');5    const submitButton = Selector('#submit-button');6        .typeText(developerName, 'John Smith')7        .click(osOption)8        .click(submitButton)9        .expect(Selector('#article-header').innerText).eql('Thank you, John Smith!');10});11import { Selector } from 'testcafe';12test('My first test', async t => {13    const developerName = Selector('#developer-name');14    const osOption = Selector('#macos');15    const submitButton = Selector('#submit-button');16        .typeText(developerName, 'John Smith')17        .click(osOption)18        .click(submitButton)19        .expect(Selector('#article-header').innerText).eql('Thank you, John Smith!');20});21import { Selector } from 'testcafe';22test('My first test', async t => {23    const developerName = Selector('#developer-name');24    const osOption = Selector('#macos');25    const submitButton = Selector('#submit-button');26        .typeText(developerName, 'John Smith')27        .click(osOption)28        .click(submitButton)29        .expect(Selector('#article-header').innerText).eql('Thank you, John Smith!');30});31import { Selector } from 'testcafe';32test('My first test', async t => {33    const developerName = Selector('#developer-name');34    const osOption = Selector('#macos');35    const submitButton = Selector('#submit-button');36        .typeText(developerName, 'John Smith')37        .click(osOption)38        .click(submitButton)Using AI Code Generation
1import { Selector } from 'testcafe';2test('My first test', async t => {3        .typeText('#developer-name', 'John Smith')4        .click('#macos')5        .click('#submit-button');6});7const TestCafe = require('testcafe');8const testcafe = await TestCafe.createTestCafe('localhost', 1337, 1338);9const runner = testcafe.createRunner();10    .browsers(['chrome'])11    .src('test.js')12    .run();13const TestCafe = require('testcafe');14const testcafe = await TestCafe.createTestCafe('localhost', 1337, 1338);15const runner = testcafe.createRunner();16    .browsers(['chrome'])17    .src('test.js')18    .run();19const TestCafe = require('testcafe');20const testcafe = await TestCafe.createTestCafe('localhost', 1337, 1338);21const runner = testcafe.createRunner();22    .browsers(['chrome'])23    .src('test.js')24    .run();25const TestCafe = require('testcafe');26const testcafe = await TestCafe.createTestCafe('localhost', 1337, 1338);27const runner = testcafe.createRunner();28    .browsers(['chrome'])29    .src('test.js')30    .run();31const TestCafe = require('testcafe');32const testcafe = await TestCafe.createTestCafe('localhost', 1337, 1338);33const runner = testcafe.createRunner();34    .browsers(['chrome'])35    .src('test.js')36    .run();37const TestCafe = require('testcafe');38const testcafe = await TestCafe.createTestCafe('localhost', 1337, 1338);39const runner = testcafe.createRunner();40    .browsers(['chromeUsing AI Code Generation
1import { vecLength } from 'testcafe';2test('My Test', async t => {3        .typeText('#developer-name', 'Peter')4        .click('#submit-button');5    const articleHeader = await t.select('#article-header');6    const headerLength = await vecLength(articleHeader);7    await t.expect(headerLength).eql(0);8});Using AI Code Generation
1import { vecLength } from 'testcafe';2test('My test', async t => {3    const length = await vecLength('#developer-name', 'value');4    console.log(length);5});6import { vecLength } from 'testcafe';7test('My test', async t => {8    const length = await vecLength('#developer-name', 'value');9    console.log(length);10});11import { vecLength } from 'testcafe';12test('My test', async t => {13    const length = await vecLength('#developer-name', 'value');14    await t.expect(length).eql(6);15});16import { vecLength } from 'testcafe';17test('My test', async t => {18    const length = await vecLength('#tried-test-cafe', 'text');19    await t.expect(length).gt(0);20});21import { vecLength } from 'testcafe';22test('My test', async t => {23    const length = await vecLength('#tried-test-cafe', 'innerHTML');24    await t.expect(length).gt(0);25});Using AI Code Generation
1import { vecLength } from 'testcafe'2test('My first test', async t => {3        .typeText('#developer-name', 'John Smith')4        .click('#macos')5        .click('#submit-button')6        .expect( vecLength('#article-header', 1) ).ok()7});Using AI Code Generation
1import {Selector} from 'testcafe';2test('My Test', async t => {3    const element = Selector('#developer-name');4    const length = await element.vecLength;5    console.log(length);6});7import {Selector, ClientFunction} from 'testcafe';8test('My Test', async t => {9    const element = Selector('#developer-name');10    const length = await ClientFunction(() => element.vecLength)();11    console.log(length);12});13import {Selector, ClientFunction} from 'testcafe';14test('My Test', async t => {15    const element = Selector('#developer-name');16    const length = await ClientFunction(() => element.vecLength)();17    console.log(length);18});19import {Selector, ClientFunction} from 'testcafe';20test('My Test', async t => {21    const element = Selector('#developer-name');22    const length = await ClientFunction(() => element.vecLength)();23    console.log(length);24});Using AI Code Generation
1const { Selector } = require('testcafe');2const selector = Selector('div');3console.log(selector.vecLength);4const { Selector } = require('testcafe');5const selector = Selector('div');6console.log(selector.vecLength);7const { Selector } = require('testcafe');8const selector = Selector('div');9const { Selector } = require('testcafe');10const selector = Selector('span');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!!
