Best JavaScript code snippet using wpt
Redistribution.spec.ts
Source:Redistribution.spec.ts  
...128                .batchDoHardWorkReallocation(withdrawData, depositData, strategies.strategyAddresses, true);129            const totalDeposit = TEN_UNITS_E8.add(TEN_UNITS_E8);130            const totalDepositS0 = totalDeposit.mul(BigNumber.from(4000)).div(BigNumber.from(10000));131            const totalDepositS1 = totalDeposit.mul(BigNumber.from(6000)).div(BigNumber.from(10000));132            expect(await spool.spool.callStatic.getStratUnderlying(vaultCreation.strategies[0])).to.beCloseTo(133                totalDepositS0,134                BasisPoints.Basis_1135            );136            expect(await spool.spool.callStatic.getStratUnderlying(vaultCreation.strategies[1])).to.beCloseTo(137                totalDepositS1,138                BasisPoints.Basis_1139            );140        });141        it("should claim vault shares after dhw", async () => {142            const { accounts, tokens, spool, strategies } = await loadFixture(deploymentFixture);143            await vault.connect(accounts.user0).redeemVaultStrategies(vaultCreation.strategies);144            const strat0 = await spool.spool.strategies(vaultCreation.strategies[0]);145            const strat1 = await spool.spool.strategies(vaultCreation.strategies[1]);146            const vaultStratShares0 = await spool.spool.getStratVaultShares(vaultCreation.strategies[0], vault.address);147            const vaultStratShares1 = await spool.spool.getStratVaultShares(vaultCreation.strategies[1], vault.address);148            const stratUnderlying0 = await spool.spool.callStatic.getStratUnderlying(vaultCreation.strategies[0]);149            const stratUnderlying1 = await spool.spool.callStatic.getStratUnderlying(vaultCreation.strategies[1]);150            const totalDeposit = TEN_UNITS_E8.add(TEN_UNITS_E8);151            const totalDeposit0 = totalDeposit.mul(BigNumber.from(4000)).div(BigNumber.from(10000));152            const totalDeposit1 = totalDeposit.mul(BigNumber.from(6000)).div(BigNumber.from(10000));153            expect(strat0.totalShares).to.beCloseTo(vaultStratShares0, BasisPoints.Basis_3);154            expect(strat1.totalShares).to.beCloseTo(vaultStratShares1, BasisPoints.Basis_3);155            expect(stratUnderlying0).to.beCloseTo(totalDeposit0, BasisPoints.Basis_1);156            expect(stratUnderlying1).to.beCloseTo(totalDeposit1, BasisPoints.Basis_1);157        });158    });159    describe("Reallocation optimize test", () => {160        let vault0: Vault;161        let vault0Creation: VaultDetailsStruct;162        let vault1: Vault;163        let vault1Creation: VaultDetailsStruct;164        let depositPerStrat: BigNumber;165        const context: TestContext = {166            reallocationTable: [],167        };168        before(async () => {169            await reset();170            console.log("getting deployment..");171            loadFixture = createFixtureLoader(myProvider.getWallets(), myProvider);172            const { accounts, tokens, spool, strategies } = await loadFixture(deploymentFixture);173            await spool.riskProviderRegistry.addProvider(accounts.riskProvider.address, 0);174            // SETUP VAULT 0175            vault0Creation = {176                underlying: tokens.USDC.address,177                strategies: [strategies.chefStrategiesFees[0].address, strategies.chefStrategiesFees[1].address],178                proportions: [6000, 4000],179                creator: accounts.rewardNotifier.address,180                vaultFee: 2000,181                riskProvider: accounts.riskProvider.address,182                riskTolerance: 0,183                name: "Test",184            };185            console.log("strat0:", vault0Creation.strategies[0]);186            console.log("strat1:", vault0Creation.strategies[1]);187            console.log("create vault 0..");188            vault0 = await createVault(spool.controller, vault0Creation, accounts.rewardNotifier);189            // user 0 deposit190            await tokens.USDC.transfer(accounts.user0.address, TEN_UNITS_E8);191            await tokens.USDC.connect(accounts.user0).approve(vault0.address, TEN_UNITS_E8);192            await vault0.connect(accounts.user0).deposit(vault0Creation.strategies, TEN_UNITS_E8, true);193            // user 1 deposit194            await tokens.USDC.transfer(accounts.user1.address, TEN_UNITS_E8);195            await tokens.USDC.connect(accounts.user1).approve(vault0.address, TEN_UNITS_E8);196            await vault0.connect(accounts.user1).deposit(vault0Creation.strategies, TEN_UNITS_E8, true);197            // SETUP VAULT 1198            vault1Creation = {199                underlying: tokens.USDC.address,200                strategies: [strategies.chefStrategiesFees[0].address, strategies.chefStrategiesFees[1].address],201                proportions: [4000, 6000],202                creator: accounts.rewardNotifier.address,203                vaultFee: 2000,204                riskProvider: accounts.riskProvider.address,205                riskTolerance: 0,206                name: "Test",207            };208            console.log("create vault 1..");209            vault1 = await createVault(spool.controller, vault1Creation, accounts.rewardNotifier);210            // user 2 deposit211            const user2DepositAmount = TEN_UNITS_E8.mul(2);212            await tokens.USDC.transfer(accounts.user2.address, user2DepositAmount);213            await tokens.USDC.connect(accounts.user2).approve(vault1.address, user2DepositAmount);214            await vault1.connect(accounts.user2).deposit(vault1Creation.strategies, user2DepositAmount, true);215            // DO HARD WORK216            const stratIndexes = [...Array(strategies.strategyAddresses.length).keys()];217            const slippages = Array.from(Array(strategies.strategyAddresses.length), () => []);218            const rewardSlippages = Array.from(Array(strategies.strategyAddresses.length), () => {219                return { doClaim: false, swapData: [] };220            });221            await spool.spool222                .connect(accounts.doHardWorker)223                .batchDoHardWork(stratIndexes, slippages, rewardSlippages, strategies.strategyAddresses);224            depositPerStrat = TEN_UNITS_E8.mul(2);225            expect(await spool.spool.callStatic.getStratUnderlying(vault0Creation.strategies[0])).to.equal(226                depositPerStrat227            );228            expect(await spool.spool.callStatic.getStratUnderlying(vault0Creation.strategies[1])).to.equal(229                depositPerStrat230            );231        });232        it("should initialize reallocation for both vaults (same amounts in opposite direction)", async () => {233            const { accounts, tokens, spool, strategies } = await loadFixture(deploymentFixture);234            const vaultStratIndexes = getStrategyIndexes(vault0Creation.strategies, strategies.strategyAddresses);235            const newProportions0 = [4000, 6000];236            const newProportions1 = [6000, 4000];237            vault0Creation.proportions = newProportions0;238            vault1Creation.proportions = newProportions1;239            const vaults = [240                {241                    vault: vault0.address,242                    strategiesCount: vaultStratIndexes.length, // strategies count243                    strategiesBitwise: getBitwiseStrategies(vaultStratIndexes).toString(),244                    newProportions: getBitwiseProportions(newProportions0).toString(),245                },246                {247                    vault: vault1.address,248                    strategiesCount: vaultStratIndexes.length, // strategies count249                    strategiesBitwise: getBitwiseStrategies(vaultStratIndexes).toString(),250                    newProportions: getBitwiseProportions(newProportions1).toString(),251                },252            ];253            const empty2dArray = [[]];254            const tx = await spool.spool255                .connect(accounts.allocationProvider)256                .reallocateVaults(vaults, strategies.strategyAddresses, empty2dArray);257            await setReallocationTable(tx, spool.spool, context);258        });259        it("doHardWork, vaults should exchange shares, without getting hit by the fee", async () => {260            const { accounts, tokens, spool, strategies } = await loadFixture(deploymentFixture);261            const stratIndexes = getStrategyIndexes(strategies.strategyAddresses, strategies.strategyAddresses);262            const slippages = Array.from(Array(strategies.strategyAddresses.length), () => []);263            const priceSlippages = Array.from(Array(strategies.strategyAddresses.length), () => {264                return { min: 0, max: MaxUint128 };265            });266            const rewardSlippages = Array.from(Array(strategies.strategyAddresses.length), () => {267                return { doClaim: false, swapData: [] };268            });269            const withdrawData = {270                reallocationTable: context.reallocationTable,271                priceSlippages: priceSlippages,272                rewardSlippages: rewardSlippages,273                stratIndexes: stratIndexes,274                slippages: slippages,275            };276            const depositData = {277                stratIndexes: stratIndexes,278                slippages: slippages,279            };280            await spool.spool281                .connect(accounts.doHardWorker)282                .batchDoHardWorkReallocation(withdrawData, depositData, strategies.strategyAddresses, true);283            expect(await spool.spool.callStatic.getStratUnderlying(vault0Creation.strategies[0])).to.be.closeTo(284                depositPerStrat,285                1286            );287            expect(await spool.spool.callStatic.getStratUnderlying(vault0Creation.strategies[1])).to.be.closeTo(288                depositPerStrat,289                1290            );291        });292        it("strategies should have same amount of shares after reallocation", async () => {293            const { accounts, tokens, spool, strategies } = await loadFixture(deploymentFixture);294            295            const stratUnderlying0 = await spool.spool.callStatic.getStratUnderlying(vault0Creation.strategies[0]);296            const stratUnderlying1 = await spool.spool.callStatic.getStratUnderlying(vault0Creation.strategies[1]);297            298            expect(stratUnderlying0).to.beCloseTo(depositPerStrat, BasisPoints.Basis_01);299            expect(stratUnderlying1).to.beCloseTo(depositPerStrat, BasisPoints.Basis_01);300        });301        it("should claim vault0 shares after dhw", async () => {302            const { accounts, tokens, spool, strategies } = await loadFixture(deploymentFixture);303            await vault0.connect(accounts.user0).redeemVaultStrategies(vault0Creation.strategies);304            const vaultStratShares0 = await spool.spool.getStratVaultShares(305                vault0Creation.strategies[0],306                vault0.address307            );308            const vaultStratShares1 = await spool.spool.getStratVaultShares(309                vault0Creation.strategies[1],310                vault0.address311            );312            const strat0 = await spool.spool.strategies(vault0Creation.strategies[0]);313            const strat1 = await spool.spool.strategies(vault0Creation.strategies[1]);314            const totalVaultShares0 = strat0.totalShares.mul(BigNumber.from(4000)).div(BigNumber.from(10000));315            const totalVaultShares1 = strat1.totalShares.mul(BigNumber.from(6000)).div(BigNumber.from(10000));316            expect(vaultStratShares0).to.beCloseTo(totalVaultShares0, BasisPoints.Basis_1);317            expect(vaultStratShares1).to.beCloseTo(totalVaultShares1, BasisPoints.Basis_1);318        });319        it("should claim vault1 shares after dhw", async () => {320            const { accounts, spool } = await loadFixture(deploymentFixture);321            await vault1.connect(accounts.user0).redeemVaultStrategies(vault1Creation.strategies);322            const vaultStratShares0 = await spool.spool.getStratVaultShares(323                vault1Creation.strategies[0],324                vault1.address325            );326            const vaultStratShares1 = await spool.spool.getStratVaultShares(327                vault1Creation.strategies[1],328                vault1.address329            );330            const strat0 = await spool.spool.strategies(vault1Creation.strategies[0]);331            const strat1 = await spool.spool.strategies(vault1Creation.strategies[1]);332            const totalVaultShares0 = strat0.totalShares.mul(BigNumber.from(6000)).div(BigNumber.from(10000));333            const totalVaultShares1 = strat1.totalShares.mul(BigNumber.from(4000)).div(BigNumber.from(10000));334            expect(vaultStratShares0).to.beCloseTo(totalVaultShares0, BasisPoints.Basis_1);335            expect(vaultStratShares1).to.beCloseTo(totalVaultShares1, BasisPoints.Basis_1);336        });337    });...RewardDrip.spec.ts
Source:RewardDrip.spec.ts  
...130            await rewardDrip.connect(controller).getActiveRewards(user1.address);131            // ASSERT132            const user1balanceAfter = await rewardToken.balanceOf(user1.address);133            const user1balanceGain = user1balanceAfter.sub(user1balanceBefore);134            expect(user1balanceGain).to.beCloseTo(rewardAmount, BasisPoints.Basis_10);135        });136        it("Deposit two users, should claim rewards proportionally", async () => {137            // ARRANGE138            const deposit1Amount = getMillionUnits(18);139            const deposit2Amount = getMillionUnits(18).div(2);140            const depositTotal = deposit1Amount.add(deposit2Amount);141            await rewardDrip.connect(user1).deposit(deposit1Amount);142            await rewardDrip.connect(user2).deposit(deposit2Amount);143            const user1balanceBefore = await rewardToken.balanceOf(user1.address);144            const user2balanceBefore = await rewardToken.balanceOf(user2.address);145            await increase(rewardDuration * 2);146            // ACT147            await rewardDrip.connect(controller).getActiveRewards(user1.address);148            await rewardDrip.connect(controller).getActiveRewards(user2.address);149            // ASSERT150            const user1balanceAfter = await rewardToken.balanceOf(user1.address);151            const user1balanceGain = user1balanceAfter.sub(user1balanceBefore);152            expect(user1balanceGain).to.beCloseTo(153                rewardAmount.mul(deposit1Amount).div(depositTotal),154                BasisPoints.Basis_10155            );156            const user2balanceAfter = await rewardToken.balanceOf(user2.address);157            const user2balanceGain = user2balanceAfter.sub(user2balanceBefore);158            expect(user2balanceGain).to.beCloseTo(159                rewardAmount.mul(deposit2Amount).div(depositTotal),160                BasisPoints.Basis_10161            );162        });163        it("Deposit two users, two rewards, should claim rewards proportionally", async () => {164            const rewardToken2 = await new MockToken__factory().connect(deployer).deploy("RWD2", "RWD2", 18);165            await rewardToken2.connect(vaultOwner).approve(rewardDrip.address, constants.MaxUint256);166            const reward2Amount = getMillionUnits(3);167            await addToken(rewardDrip, rewardToken2, vaultOwner, reward2Amount, Math.round(rewardDuration / 2));168            // ARRANGE169            const deposit1Amount = getMillionUnits(18);170            const deposit2Amount = getMillionUnits(18).div(2);171            const depositTotal = deposit1Amount.add(deposit2Amount);172            await rewardDrip.connect(user1).deposit(deposit1Amount);173            await rewardDrip.connect(user2).deposit(deposit2Amount);174            const user1balance1Before = await rewardToken.balanceOf(user1.address);175            const user2balance1Before = await rewardToken.balanceOf(user2.address);176            const user1balance2Before = await rewardToken2.balanceOf(user1.address);177            const user2balance2Before = await rewardToken2.balanceOf(user2.address);178            await increase(rewardDuration * 2);179            // ACT180            await rewardDrip.connect(controller).getActiveRewards(user1.address);181            await rewardDrip.connect(controller).getActiveRewards(user2.address);182            // ASSERT183            const user1balance1After = await rewardToken.balanceOf(user1.address);184            const user1balance2After = await rewardToken2.balanceOf(user1.address);185            const user1balance1Gain = user1balance1After.sub(user1balance1Before);186            const user1balance2Gain = user1balance2After.sub(user1balance2Before);187            expect(user1balance1Gain).to.beCloseTo(188                rewardAmount.mul(deposit1Amount).div(depositTotal),189                BasisPoints.Basis_10190            );191            expect(user1balance2Gain).to.beCloseTo(192                reward2Amount.mul(deposit1Amount).div(depositTotal),193                BasisPoints.Basis_10194            );195            const user2balance1After = await rewardToken.balanceOf(user2.address);196            const user2balance2After = await rewardToken2.balanceOf(user2.address);197            const user2balance1Gain = user2balance1After.sub(user2balance1Before);198            const user2balance2Gain = user2balance2After.sub(user2balance2Before);199            expect(user2balance1Gain).to.beCloseTo(200                rewardAmount.mul(deposit2Amount).div(depositTotal),201                BasisPoints.Basis_10202            );203            expect(user2balance2Gain).to.beCloseTo(204                reward2Amount.mul(deposit2Amount).div(depositTotal),205                BasisPoints.Basis_10206            );207        });208    });209    describe("Rewards Drip Emitting Rewards, deposit before rewards", () => {210        const rewardAmount = getMillionUnits(18);211        const rewardDuration = SECS_DAY * 10; // 10 days212        it("Deposit before reward start, should claim rewards proportionally", async () => {213            // ARRANGE214            const deposit1Amount = getMillionUnits(18);215            await rewardDrip.connect(user1).deposit(deposit1Amount);216            const user1balanceBefore = await rewardToken.balanceOf(user1.address);217            await increase(rewardDuration);218            await addToken(rewardDrip, rewardToken, vaultOwner, rewardAmount, rewardDuration);219            const deposit2Amount = deposit1Amount;220            const user2balanceBefore = await rewardToken.balanceOf(user2.address);221            await rewardDrip.connect(user2).deposit(deposit2Amount);222            const depositTotal = deposit1Amount.add(deposit2Amount);223            await increase(rewardDuration);224            // ACT225            await rewardDrip.connect(controller).getActiveRewards(user1.address);226            await rewardDrip.connect(controller).getActiveRewards(user2.address);227            // ASSERT228            const user1balanceAfter = await rewardToken.balanceOf(user1.address);229            const user1balanceGain = user1balanceAfter.sub(user1balanceBefore);230            expect(user1balanceGain).to.beCloseTo(231                rewardAmount.mul(deposit1Amount).div(depositTotal),232                BasisPoints.Basis_10233            );234            const user2balanceAfter = await rewardToken.balanceOf(user2.address);235            const user2balanceGain = user2balanceAfter.sub(user2balanceBefore);236            expect(user2balanceGain).to.beCloseTo(237                rewardAmount.mul(deposit2Amount).div(depositTotal),238                BasisPoints.Basis_10239            );240        });241    });242    describe("End of life tests", () => {243        const rewardAmount = getMillionUnits(18);244        const reward2Amount = getMillionUnits(3);245        const rewardDuration = SECS_DAY * 10; // 10 days246        let rewardToken2: MockToken;247        beforeEach(async () => {248            await rewardToken.mint(vaultOwner.address, rewardAmount);249            await rewardDrip.connect(vaultOwner).addToken(rewardToken.address, rewardDuration, rewardAmount);250            rewardToken2 = await new MockToken__factory().connect(deployer).deploy("RWD2", "RWD2", 6);251            await addToken(rewardDrip, rewardToken2, vaultOwner, reward2Amount, rewardDuration);252        });253        it("Should be able to remove token after finish, while user can still claim the token reward", async () => {254            // ARRANGE255            const deposit1Amount = getMillionUnits(18);256            await rewardDrip.connect(user1).deposit(deposit1Amount);257            const user1balance1Before = await rewardToken.balanceOf(user1.address);258            const user1balance2Before = await rewardToken2.balanceOf(user1.address);259            const rewardCountBefore = await rewardDrip.rewardTokensCount();260            await increase(rewardDuration);261            // ACT262            await rewardDrip.connect(vaultOwner).removeReward(rewardToken.address);263            await rewardDrip.connect(controller).getActiveRewards(user1.address);264            await rewardDrip.connect(user1).getRewards([rewardToken.address]);265            // ASSERT266            const rewardCountAfter = await rewardDrip.rewardTokensCount();267            expect(rewardCountAfter).to.be.equal(rewardCountBefore - 1);268            const user1balance1After = await rewardToken.balanceOf(user1.address);269            const user1balance2After = await rewardToken2.balanceOf(user1.address);270            const user1balance1Gain = user1balance1After.sub(user1balance1Before);271            const user1balance2Gain = user1balance2After.sub(user1balance2Before);272            expect(user1balance1Gain).to.beCloseTo(rewardAmount, BasisPoints.Basis_10);273            expect(user1balance2Gain).to.beCloseTo(reward2Amount, BasisPoints.Basis_10);274        });275    });276});277const addToken = async (278    rewardDrip: MockRewardDrip,279    rewardToken: MockToken,280    vaultOwner: SignerWithAddress,281    rewardAmount: BigNumber,282    rewardDuration: BigNumberish283) => {284    await rewardToken.connect(vaultOwner).approve(rewardDrip.address, constants.MaxUint256);285    await rewardToken.mint(vaultOwner.address, rewardAmount);286    await rewardDrip.connect(vaultOwner).addToken(rewardToken.address, rewardDuration, rewardAmount);287};rgb-color.test.ts
Source:rgb-color.test.ts  
2import {RgbColor} from './rgb-color';3describe('color.RgbColor', () => {4  describe('chroma', () => {5    should('return the correct value of chroma', () => {6      assert(new RgbColor(126, 126, 184).chroma).to.beCloseTo(0.23, 2);7    });8  });9  describe('hue', () => {10    should('return the correct value of hue', () => {11      assert(new RgbColor(126, 126, 184).hue).to.beCloseTo(240, 0);12    });13  });14  describe('lightness', () => {15    should('return the correct value of lightness', () => {16      assert(new RgbColor(126, 126, 184).lightness).to.beCloseTo(0.608, 3);17    });18  });19  describe('saturation', () => {20    should('return the correct value of saturation', () => {21      assert(new RgbColor(126, 126, 184).saturation).to.beCloseTo(0.29, 3);22    });23    should('return 0 if the color is grey', () => {24      assert(new RgbColor(12, 12, 12).saturation).to.equal(0);25    });26  });27  describe('newInstance', () => {28    should('create the correct color object', () => {29      const rgb = new RgbColor(1, 23, 45);30      assert(rgb.red).to.equal(1);31      assert(rgb.green).to.equal(23);32      assert(rgb.blue).to.equal(45);33    });34    should('throw error if red is not an integer', () => {35      assert(() => {...Using AI Code Generation
1var wpt = require('webpagetest');2var wpt = new WebPageTest('www.webpagetest.org');3    if (err) return console.error(err);4    console.log('Test status: ' + data.statusText);5    wpt.getTestResults(data.data.testId, function(err, data) {6        if (err) return console.error(err);7        console.log('Test results: ' + JSON.stringify(data.data.average));8    });9});10{11  "scripts": {12  },13  "dependencies": {14  }15}16{17  "dependencies": {18    "webpagetest": {19      "requires": {20      }21    }22  }23}24{25  "dependencies": {26    "webpagetest": {27      "requires": {28      }Using AI Code Generation
1var wpt = require('webpagetest');2var wpt = new WebPageTest('www.webpagetest.org');3    if (err) throw err;4    wpt.getTestResults(data.data.testId, function(err, data) {5        if (err) throw err;6        expect(data.data.median.firstView).toBeCloseTo(1.0, 0.5);7    });8});Using AI Code Generation
1var wpt = require('webpagetest');2var api = new wpt('www.webpagetest.org');3    if (err) {4        console.log('Something went wrong: ' + err);5    } else {6        console.log('Test status: ' + data.statusText);7        console.log('Test ID: ' + data.data.testId);8        api.getTestResults(data.data.testId, function(err, test) {9            if (err) {10                console.log('Something went wrong: ' + err);11            } else {12                console.log('First View: ' + test.data.average.firstView.SpeedIndex);13                console.log('Repeat View: ' + test.data.average.repeatView.SpeedIndex);14                expect(test.data.average.firstView.SpeedIndex).toBeCloseTo(1000, 1);15                expect(test.data.average.repeatView.SpeedIndex).toBeCloseTo(1000, 1);16            }17        });18    }19});Using AI Code Generation
1var wpt = require('wpt')2var wpt = new WebPageTest('www.webpagetest.org');3  if (err) {4    console.log(err);5  } else {6    console.log(data);7  }8});9{ statusCode: 400,10  data: 'Missing required parameter: url' }11var wpt = require('wpt')12var wpt = new WebPageTest('www.webpagetest.org');13  if (err) {14    console.log(err);15  } else {16    console.log(data);17  }18});19var wpt = require('wpt')20var wpt = new WebPageTest('www.webpagetest.org');21  if (err) {22    console.log(err);23  } else {24    console.log(data);25  }26});27var wpt = require('wpt')28var wpt = new WebPageTest('www.webpagetest.org');29  if (err) {30    console.log(err);31  } else {32    console.log(data);33  }34});Using AI Code Generation
1var wptoolkit = require('wptoolkit');2var expect = require('chai').expect;3describe('Test Suite', function () {4    it('Test Case 1', function () {5        expect(1.2345).to.beCloseTo(1.2346, 3);6    });7});81 passing (10ms)Using AI Code Generation
1var wptools = require('wptools');2var expect = require('chai').expect;3var request = require('request');4var fs = require('fs');5var assert = require('assert');6var chai = require('chai');7var chaiAsPromised = require('chai-as-promised');8chai.use(chaiAsPromised);9chai.should();10chaiAsPromised.transferPromiseness = wptools.transferPromiseness;11describe('wptools', function() {12  this.timeout(10000);13  describe('#get()', function() {14    it('should get a page', function(done) {15      var page = wptools.page('Barack Obama');16      page.get(function(err, info) {17        expect(info).to.be.ok;18        expect(info).to.have.property('pageid');19        expect(info).to.have.property('title');20        done();21      });22    });23  });24});25var wptools = require('wptools');26var expect = require('chai').expect;27var request = require('request');28var fs = require('fs');29var assert = require('assert');30var chai = require('chai');31var chaiAsPromised = require('chai-as-promised');32chai.use(chaiAsPromised);33chai.should();34chaiAsPromised.transferPromiseness = wptools.transferPromiseness;35describe('wptools', function() {36  this.timeout(10000);37  describe('#get()', function() {38    it('should get a page', function(done) {39      var page = wptools.page('Barack Obama');40      page.get(function(err, info) {41        expect(info).to.be.ok;42        expect(info).to.have.property('pageid');43        expect(info).to.have.property('title');44        done();45      });46    });47  });48});49var wptools = require('wptools');50var expect = require('chai').expect;51var request = require('request');52var fs = require('fs');53var assert = require('assert');54var chai = require('chai');55var chaiAsPromised = require('chai-as-promised');56chai.use(chaiAsPromised);57chai.should();Using AI Code Generation
1wpt.beCloseTo(1.0, 1.01, 0.01);2wpt.beCloseTo(1.0, 1.01, 0.01, "my custom message");3wpt.beCloseTo(1.0, 1.01, 0.01, "my custom message", "my custom name");4wpt.beCloseTo(1.0, 1.01, 0.01, "my custom message", "my custom name", true);5wpt.beCloseTo(1.0, 1.01, 0.01, "my custom message", "my custom name", false);6wpt.beCloseTo(1.0, 1.01, 0.01, "my custom message", "my custom name", true, true);7wpt.beCloseTo(1.0, 1.01, 0.01, "my custom message", "my custom name", false, true);8wpt.beCloseTo(1.0, 1.01, 0.01, "my custom message", "my custom name", true, false);9wpt.beCloseTo(1.0, 1.01Learn 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!!
