Best JavaScript code snippet using mocha
xunit.spec.js
Source:xunit.spec.js  
...108  });109  describe('done', function() {110    describe('if fileStream is truthly', function() {111      it('should run callback with failure inside streams end', function() {112        var xunit = new XUnit({on: function() {}, once: function() {}});113        var callback = function(failures) {114          callbackArgument = failures;115        };116        var calledEnd = false;117        var fileStream = {118          end: function(callback) {119            calledEnd = true;120            callback();121          }122        };123        xunit.done.call({fileStream: fileStream}, expectedFailure, callback);124        expect(calledEnd, 'to be', true);125        expect(callbackArgument, 'to be', expectedFailure);126      });127    });128    describe('if fileStream is falsy', function() {129      it('should run callback with failure', function() {130        var xunit = new XUnit({on: function() {}, once: function() {}});131        var callback = function(failures) {132          callbackArgument = failures;133        };134        xunit.done.call({fileStream: false}, expectedFailure, callback);135        expect(callbackArgument, 'to be', expectedFailure);136      });137    });138  });139  describe('write', function() {140    describe('if fileStream is truthly', function() {141      it('should call fileStream write with line and new line', function() {142        var xunit = new XUnit({on: function() {}, once: function() {}});143        var fileStream = {144          write: function(write) {145            expectedWrite = write;146          }147        };148        xunit.write.call({fileStream: fileStream}, expectedLine);149        expect(expectedWrite, 'to be', expectedLine + '\n');150      });151    });152    describe('if fileStream is falsy and stdout exists', function() {153      it('should call write with line and new line', function() {154        stdoutWrite = process.stdout.write;155        process.stdout.write = function(string) {156          stdout.push(string);157        };158        var xunit = new XUnit({on: function() {}, once: function() {}});159        xunit.write.call({fileStream: false}, expectedLine);160        process.stdout.write = stdoutWrite;161        expect(stdout[0], 'to be', expectedLine + '\n');162      });163    });164    describe('if fileStream is falsy and stdout does not exist', function() {165      it('should call write with line', function() {166        stdoutWrite = process;167        process = false; // eslint-disable-line no-native-reassign, no-global-assign168        var cachedConsoleLog = console.log;169        console.log = function(string) {170          stdout.push(string);171        };172        var xunit = new XUnit({on: function() {}, once: function() {}});173        xunit.write.call({fileStream: false}, expectedLine);174        console.log = cachedConsoleLog;175        process = stdoutWrite; // eslint-disable-line no-native-reassign, no-global-assign176        expect(stdout[0], 'to be', expectedLine);177      });178    });179  });180  describe('test', function() {181    describe('on test failure', function() {182      it('should write expected tag with error details', function() {183        var xunit = new XUnit({on: function() {}, once: function() {}});184        var expectedTest = {185          state: 'failed',186          title: expectedTitle,187          parent: {188            fullTitle: function() {189              return expectedClassName;190            }191          },192          duration: 1000,193          err: {194            message: expectedMessage,195            stack: expectedStack196          }197        };198        xunit.test.call(199          {200            write: function(string) {201              expectedWrite = string;202            }203          },204          expectedTest205        );206        var expectedTag =207          '<testcase classname="' +208          expectedClassName +209          '" name="' +210          expectedTitle +211          '" time="1"><failure>' +212          expectedMessage +213          '\n' +214          expectedStack +215          '</failure></testcase>';216        expect(expectedWrite, 'to be', expectedTag);217      });218    });219    describe('on test pending', function() {220      it('should write expected tag', function() {221        var xunit = new XUnit({on: function() {}, once: function() {}});222        var expectedTest = {223          isPending: function() {224            return true;225          },226          title: expectedTitle,227          parent: {228            fullTitle: function() {229              return expectedClassName;230            }231          },232          duration: 1000233        };234        xunit.test.call(235          {236            write: function(string) {237              expectedWrite = string;238            }239          },240          expectedTest241        );242        var expectedTag =243          '<testcase classname="' +244          expectedClassName +245          '" name="' +246          expectedTitle +247          '" time="1"><skipped/></testcase>';248        expect(expectedWrite, 'to be', expectedTag);249      });250    });251    describe('on test in any other state', function() {252      it('should write expected tag', function() {253        var xunit = new XUnit({on: function() {}, once: function() {}});254        var expectedTest = {255          isPending: function() {256            return false;257          },258          title: expectedTitle,259          parent: {260            fullTitle: function() {261              return expectedClassName;262            }263          },264          duration: false265        };266        xunit.test.call(267          {268            write: function(string) {269              expectedWrite = string;270            }271          },272          expectedTest273        );274        var expectedTag =275          '<testcase classname="' +276          expectedClassName +277          '" name="' +278          expectedTitle +279          '" time="0"/>';280        expect(expectedWrite, 'to be', expectedTag);281      });282    });283  });284  describe('custom suite name', function() {285    // capture the events that the reporter subscribes to286    var events;287    // the runner parameter of the reporter288    var runner;289    // capture output lines (will contain the resulting XML of the xunit reporter)290    var lines;291    // the file stream into which the xunit reporter will write into292    var fileStream;293    beforeEach(function() {294      events = {};295      runner = {296        on: function(eventName, eventHandler) {297          // capture the event handler298          events[eventName] = eventHandler;299        }300      };301      runner.once = runner.on;302      lines = [];303      fileStream = {304        write: function(line) {305          // capture the output lines306          lines.push(line);307        }308      };309    });310    it('should use "Mocha Tests" as the suite name if no custom name is provided', function() {311      // arrange312      var xunit = new XUnit(runner);313      xunit.fileStream = fileStream;314      // act (trigger the end event to force xunit reporter to write the output)315      events['end']();316      // assert317      assert(318        lines[0].indexOf('Mocha Tests') >= 0,319        'it should contain the text "Mocha Tests"'320      );321    });322    it('should use the custom suite name as the suite name when provided in the reporter options', function() {323      // arrange324      var options = {325        reporterOptions: {326          // this time, with a custom suite name327          suiteName: 'Mocha Is Great!'328        }329      };330      var xunit = new XUnit(runner, options);331      xunit.fileStream = fileStream;332      // act (trigger the end event to force xunit reporter to write the output)333      events['end']();334      // assert335      assert(336        lines[0].indexOf('<testsuite name="Mocha Is Great!"') === 0,337        '"' + lines[0] + '" should contain the text "Mocha Is Great"'338      );339    });340  });...xunit.js
Source:xunit.js  
1/*eslint strict:0*/2var tester = require('tester');3casper.test.begin('XUnitReporter() initialization', 1, function suite(test) {4    var xunit = require('xunit').create();5    var results = new tester.TestSuiteResult();6    xunit.setResults(results);7    test.assertTruthy(xunit.getSerializedXML(), "XML can be generated");8    test.done();9});10casper.test.begin('XUnitReporter() can hold test suites', 4, function suite(test) {11    var xunit = require('xunit').create();12    var xmlDocument;13    var results = new tester.TestSuiteResult();14    var suite1 = new tester.TestCaseResult({15        name: 'foo',16        file: '/foo'17    });18    results.push(suite1);19    var suite2 = new tester.TestCaseResult({20        name: 'bar',21        file: '/bar'22    });23    results.push(suite2);24    xunit.setResults(results);25    xmlDocument = xunit.getXML();26    casper.start();27    test.assertEquals(xmlDocument.querySelectorAll('testsuite').length, 2, "2 test suites exist");28    test.assertTruthy(xmlDocument.querySelector('testsuites[time]'), "Element 'testsuites' has time attribute");29    test.assertTruthy(xmlDocument.querySelector('testsuite[name="foo"][package="foo"]'), "Package foo exists");30    test.assertTruthy(xmlDocument.querySelector('testsuite[name="bar"][package="bar"]'), "Package bar exists");31    test.done();32});33casper.test.begin('XUnitReporter() can hold a suite with a successful test', 1, function suite(test) {34    var xunit = require('xunit').create();35    var xmlDocument;36    var results = new tester.TestSuiteResult();37    var suite1 = new tester.TestCaseResult({38        name: 'foo',39        file: '/foo'40    });41    suite1.addSuccess({42        success: true,43        type: "footype",44        message: "footext",45        file: "/foo"46    });47    results.push(suite1);48    xunit.setResults(results);49    xmlDocument = xunit.getXML();50    casper.start();51    test.assertTruthy(xmlDocument.querySelector('testsuite[name="foo"][package="foo"][tests="1"][failures="0"] testcase[name="footext"]'), "Successful test case exists");52    test.done();53});54casper.test.begin('XUnitReporter() can handle a failed test', 2, function suite(test) {55    var xunit = require('xunit').create();56    var xmlDocument;57    var results = new tester.TestSuiteResult();58    var suite1 = new tester.TestCaseResult({59        name: 'foo',60        file: '/foo'61    });62    suite1.addFailure({63        success: false,64        type: "footype",65        message: "footext",66        file: "/foo"67    });68    results.push(suite1);69    xunit.setResults(results);70    xmlDocument = xunit.getXML();71    casper.start();72    test.assertTruthy(xmlDocument.querySelector('testsuite[name="foo"][package="foo"][tests="1"][failures="1"] testcase[name="footext"] failure[type="footype"]'), "Failure node exists");73    test.assertEquals(xmlDocument.querySelector('failure[type="footype"]').textContent, 'footext');74    test.done();75});76casper.test.begin('XUnitReporter() can handle custom name attribute for a test case', 2, function suite(test) {77    var xunit = require('xunit').create();78    var xmlDocument;79    var results = new tester.TestSuiteResult();80    var suite1 = new tester.TestCaseResult({81        name: 'foo',82        file: '/foo'83    });84    suite1.addFailure({85        success: false,86        type: "footype",87        message: "footext",88        file: "/foo",89        name: "foo bar baz"90    });91    results.push(suite1);92    xunit.setResults(results);93    xmlDocument = xunit.getXML();94    casper.start();95    test.assertTruthy(xmlDocument.querySelector('testsuite[name="foo"][package="foo"][tests="1"][failures="1"] testcase[name="foo bar baz"] failure[type="footype"]'), "Failure node exists");96    test.assertEquals(xmlDocument.querySelector('failure[type="footype"]').textContent, 'footext');97    test.done();98});99casper.test.begin('XUnitReporter() does not have default XML namespace', 1, function suite(test) {100    var xunit = require('xunit').create();101    var xmlDocument;102    var results = new tester.TestSuiteResult();103    var suite1 = new tester.TestCaseResult({104        name: 'foo',105        file: '/foo'106    });107    results.push(suite1);108    xunit.setResults(results);109    xmlDocument = xunit.getXML();110    casper.start();111    test.assertFalsy(xmlDocument.querySelector('testsuites[xmlns]'), "No default namespace");112    test.done();113});114casper.test.begin('XUnitReporter() can handle markup in nodes', 4, function suite(test) {115    var xunit = require('xunit').create();116    var xmlDocument;117    var results = new tester.TestSuiteResult();118    var suite1 = new tester.TestCaseResult({119        name: 'foo',120        file: '/foo'121    });122    suite1.addFailure({123        success: false,124        type: "footype",125        message: "<b>foo</b> <i>bar</i> and <a href=''>baz</a>",126        file: "/foo",127        name: "foo bar baz"128    });129    suite1.addError({130        name: 'foo',131        message: "<b>foo</b> <i>bar</i> and <a href=''>baz</a>"132    });133    suite1.addWarning("<b>some warning markup</b>");134    results.push(suite1);135    xunit.setResults(results);136    xmlDocument = xunit.getXML();137    casper.start();138    test.assertTruthy(xmlDocument.querySelector('testsuite[name="foo"][package="foo"][tests="1"][failures="1"] testcase[name="foo bar baz"] failure[type="footype"]'), "Node exists");139    test.assertEquals(xmlDocument.querySelector('failure[type="footype"]').textContent, "<b>foo</b> <i>bar</i> and <a href=''>baz</a>", "Handles markup in failure node");140    test.assertEquals(xmlDocument.querySelector('error[type="foo"]').textContent, "<b>foo</b> <i>bar</i> and <a href=''>baz</a>", "Handles markup in error node");141    test.assertEquals(xmlDocument.querySelector('system-out').textContent, "<b>some warning markup</b>", "Handles markup in error node")142    test.done();...script.js
Source:script.js  
1/*globals angular*/2(function() {3    "use strict";4    var module = angular.module('allure.xunit', []);5    module.config(function($stateProvider, allureTabsProvider, testcaseProvider) {6        $stateProvider7            .state('xunit', {8                url: "/xunit",9                templateUrl: "plugins/xunit/tab.tpl.html",10                controller: 'XUnitCtrl',11                resolve: {12                    testsuites: function($http) {13                        return $http.get('data/xunit.json').then(function(response) {14                            return response.data;15                        });16                    }17                }18            })19            .state('xunit.testsuite', {20                url: "/:testsuiteUid"21            })22            .state('xunit.testsuite.expanded', {23                url: '/expanded'24            });25        allureTabsProvider.tabs.push({name: 'xunit', title: 'xunit.TITLE', icon: 'fa fa-briefcase'});26        allureTabsProvider.addTranslation('xunit');27        testcaseProvider.attachStates('xunit.testsuite');28    });29    module.controller('XUnitCtrl', function($scope, $state, testsuites) {30        function setTestsuite(testsuiteUid) {31            var testsuite = $scope.testsuites.filter(function(testsuite) {32                return testsuite.uid === testsuiteUid;33            })[0];34            if($scope.testsuite !== testsuite) {35                $scope.testsuite = testsuite;36            }37        }38        $scope.setTestsuite = function(testsuiteUid) {39            $state.go('xunit.testsuite', {testsuiteUid: testsuiteUid});40        };41        $scope.isState = function(statename) {42            return $state.is(statename);43        };44        $scope.testsuites = testsuites.testSuites;45        $scope.time = testsuites.time;46        $scope.statistic = $scope.testsuites.reduce(function(statistic, testsuite) {47            ['passed', 'pending', 'canceled', 'broken', 'failed', 'total'].forEach(function(status) {48                statistic[status] += testsuite.statistic[status];49            });50            return statistic;51        }, {52            passed: 0, pending: 0, canceled: 0, failed: 0, broken: 0, total: 053        });54        $scope.testcase = {};55        $scope.$watch('testcase.uid', function(testcaseUid, oldUid) {56            if(testcaseUid && testcaseUid !== oldUid) {57                $state.go('xunit.testsuite.testcase', {testcaseUid: testcaseUid});58            }59        });60        $scope.$on('$stateChangeSuccess', function(event, state, params) {61            delete $scope.testsuite;62            delete $scope.testcase.uid;63            if(params.testsuiteUid) {64                setTestsuite(params.testsuiteUid);65            }66            if(params.testcaseUid) {67                $scope.testcase.uid = params.testcaseUid;68            }69        });70    });71    module.controller('TestSuitesCtrl', function($scope, WatchingStore, Collection) {72        var store = new WatchingStore('testSuitesSettings');73        $scope.statusFilter = function(testsuite) {74            var visible = false;75            angular.forEach(testsuite.statistic, function(value, status) {76                visible = visible || ($scope.showStatuses[status.toUpperCase()] && value > 0);77            });78            return visible;79        };80        $scope.select = function(direction) {81            var index = $scope.list.indexOf($scope.testsuite),82                testsuite = direction < 0 ? $scope.list.getPrevious(index) : $scope.list.getNext(index);83            $scope.setTestsuite(testsuite.uid);84        };85        $scope.showStatuses = {};86        $scope.sorting = {87            predicate: store.bindProperty($scope, 'sorting.predicate', 'statistic.failed'),88            reverse: store.bindProperty($scope, 'sorting.reverse', false)89        };90        $scope.$watch('testsuites', function(testsuites) {91            $scope.list = new Collection(testsuites);92        });93        $scope.$watch('showStatuses', function() {94            $scope.list.filter($scope.statusFilter);95        }, true);96        $scope.$watch('sorting', function() {97            $scope.list.sort($scope.sorting);98        }, true);99    });...makegrid.js
Source:makegrid.js  
1(function(win, lib){2	3    var doc = win.document;4    var docEl = doc.documentElement;5    var gridEl = doc.querySelector('meta[name="grid"]');6    var styleEl;7    var flexible = lib.flexible || (lib.flexible = {});89    function makeGrid(params) {10        var designWidth = parseFloat(params.designWidth);11        var designUnit = parseFloat(params.designUnit);12        var columnCount = parseFloat(params.columnCount);13        var columnXUnit = parseFloat(params.columnXUnit);14        var gutterXUnit = parseFloat(params.gutterXUnit);15        var edgeXUnit = parseFloat(params.edgeXUnit);16        var className = params.className || 'grid';1718        if (!(params.designWidth && params.designUnit && params.columnCount && params.columnXUnit && params.gutterXUnit && params.edgeXUnit)) {19            throw new Error('åæ°é误');20        }2122        lib.flexible.gridParams = params;2324        var ratio = designUnit / designWidth * 10;25        var columnWidth = columnXUnit * ratio;26        var gutterWidth = gutterXUnit * ratio;27        var edgeWidth = edgeXUnit * ratio;2829        var cssText = [30            '.' + className + ' {',31                'box-sizing:content-box;',32                'padding-left: ' + edgeWidth + 'rem;',33                'padding-right: ' + edgeWidth + 'rem;',34                'margin-left: -' + gutterWidth + 'rem;',35            '}',3637            '.' + className + ':before,',38            '.' + className + ':after{',39                'content: " ";',40                'display: table;',41            '}',4243            '.' + className + ':after {',44              'clear: both;',45            '}',4647            '.' + className + ' [class^="col-"] {',48                'margin-left: ' + gutterWidth + 'rem;',49                'float: left;',50            '}'51        ];5253        for (var i = 1; i <= columnCount; i++) {54            var width = columnWidth * i + gutterWidth * (i - 1);55            cssText.push('.' + className + ' .col-' + i + ' {width: ' + width + 'rem;}');56        }5758        if (styleEl && styleEl.parentNode) {59            styleEl.parentNode.removeChild(styleEl);60        }61        styleEl = doc.createElement('style');62        styleEl.innerHTML = cssText.join('');63        var el = doc.querySelector('head') || docEl.firstElementChild || docEl;64        el.appendChild(styleEl);65    }6667    var gridMode = {68        '750-12': {designWidth:750,designUnit:6,columnCount:12,columnXUnit:7,gutterXUnit:3,edgeXUnit:4},69        '750-6': {designWidth:750,designUnit:6,columnCount:6,columnXUnit:17,gutterXUnit:3,edgeXUnit:4},70        '640-12': {designWidth:640,designUnit:4,columnCount:12,columnXUnit:11,gutterXUnit:2,edgeXUnit:3},71        '640-6': {designWidth:640,designUnit:4,columnCount:6,columnXUnit:24,gutterXUnit:2,edgeXUnit:3}72    }73    function makeGridMode(modeName) {74        var mode = gridMode[modeName];75        if (mode) {76            makeGrid(mode);77        } else {78            throw new Error('䏿¯æè¿ä¸ªé¢è®¾æ¨¡å¼');79        }80    }8182    if (gridEl) {83        var content = gridEl.getAttribute('content');84        if (content) {85            var reg = /([^=]+)=([\d\.\-]+)/g;86            var matched;87            var params = {};88            while (!!(matched = reg.exec(content))) {89                params[matched[1]] = matched[2];90            }9192            if (params.modeName){93                makeGridMode(params.modeName);94            } else {95                makeGrid(params);96            }97        }98    }99100    flexible.makeGrid = makeGrid;101    flexible.makeGridMode = makeGridMode;102
...makegrid.debug.js
Source:makegrid.debug.js  
1(function(win, lib){2    var doc = win.document;3    var docEl = doc.documentElement;4    var gridEl = doc.querySelector('meta[name="grid"]');5    var styleEl;6    var flexible = lib.flexible || (lib.flexible = {});7    function makeGrid(params) {8        var designWidth = parseFloat(params.designWidth);9        var designUnit = parseFloat(params.designUnit);10        var columnCount = parseFloat(params.columnCount);11        var columnXUnit = parseFloat(params.columnXUnit);12        var gutterXUnit = parseFloat(params.gutterXUnit);13        var edgeXUnit = parseFloat(params.edgeXUnit);14        var className = params.className || 'grid';15        if (!(params.designWidth && params.designUnit && params.columnCount && params.columnXUnit && params.gutterXUnit && params.edgeXUnit)) {16            throw new Error('åæ°é误');17        }18        lib.flexible.gridParams = params;19        var ratio = designUnit / designWidth * 10;20        var columnWidth = columnXUnit * ratio;21        var gutterWidth = gutterXUnit * ratio;22        var edgeWidth = edgeXUnit * ratio;23        var cssText = [24            '.' + className + ' {',25                'box-sizing:content-box;',26                'padding-left: ' + edgeWidth + 'rem;',27                'padding-right: ' + edgeWidth + 'rem;',28                'margin-left: -' + gutterWidth + 'rem;',29            '}',30            '.' + className + ':before,',31            '.' + className + ':after{',32                'content: " ";',33                'display: table;',34            '}',35            '.' + className + ':after {',36              'clear: both;',37            '}',38            '.' + className + ' [class^="col-"] {',39                'margin-left: ' + gutterWidth + 'rem;',40                'float: left;',41            '}'42        ];43        for (var i = 1; i <= columnCount; i++) {44            var width = columnWidth * i + gutterWidth * (i - 1);45            cssText.push('.' + className + ' .col-' + i + ' {width: ' + width + 'rem;}');46        }47        if (styleEl && styleEl.parentNode) {48            styleEl.parentNode.removeChild(styleEl);49        }50        styleEl = doc.createElement('style');51        styleEl.innerHTML = cssText.join('');52        var el = doc.querySelector('head') || docEl.firstElementChild || docEl;53        el.appendChild(styleEl);54    }55    var gridMode = {56        '750-12': {designWidth:750,designUnit:6,columnCount:12,columnXUnit:7,gutterXUnit:3,edgeXUnit:4},57        '750-6': {designWidth:750,designUnit:6,columnCount:6,columnXUnit:17,gutterXUnit:3,edgeXUnit:4},58        '640-12': {designWidth:640,designUnit:4,columnCount:12,columnXUnit:11,gutterXUnit:2,edgeXUnit:3},59        '640-6': {designWidth:640,designUnit:4,columnCount:6,columnXUnit:24,gutterXUnit:2,edgeXUnit:3}60    }61    function makeGridMode(modeName) {62        var mode = gridMode[modeName];63        if (mode) {64            makeGrid(mode);65        } else {66            throw new Error('䏿¯æè¿ä¸ªé¢è®¾æ¨¡å¼');67        }68    }69    if (gridEl) {70        var content = gridEl.getAttribute('content');71        if (content) {72            var reg = /([^=]+)=([\d\.\-]+)/g;73            var matched;74            var params = {};75            while (!!(matched = reg.exec(content))) {76                params[matched[1]] = matched[2];77            }78            if (params.modeName){79                makeGridMode(params.modeName);80            } else {81                makeGrid(params);82            }83        }84    }85    flexible.makeGrid = makeGrid;86    flexible.makeGridMode = makeGridMode;...spec-xunit-reporter.js
Source:spec-xunit-reporter.js  
...21 *22 * @api public23 * @param {Runner} runner Test runner object, handled implicitly by mocha24 */25function SpecXUnit( runner ) {26	Spec.call( this, runner );27	XUnit.call( this, runner, { reporterOptions: { output: process.env.XUNIT_FILE || reportName } } );28}29/**30 * Inherit from Spec and XUnit prototypes.31 */32inherits( SpecXUnit, Spec );...Using AI Code Generation
1var assert = require('assert');2describe('Array', function() {3  describe('#indexOf()', function() {4    it('should return -1 when the value is not present', function() {5      assert.equal(-1, [1,2,3].indexOf(5));6      assert.equal(-1, [1,2,3].indexOf(0));7    });8  });9});Using AI Code Generation
1var assert = require('assert');2describe('Array', function() {3  describe('#indexOf()', function() {4    it('should return -1 when the value is not present', function() {5      assert.equal(-1, [1,2,3].indexOf(4));6    });7  });8});9var should = require('should');10describe('Array', function() {11  describe('#indexOf()', function() {12    it('should return -1 when the value is not present', function() {13      [1,2,3].indexOf(4).should.equal(-1);14    });15  });16});Using AI Code Generation
1var assert = require('assert');2describe('Array', function() {3  describe('#indexOf()', function() {4    it('should return -1 when the value is not present', function() {5      assert.equal(-1, [1,2,3].indexOf(4));6    });7  });8});9var assert = require('assert');10describe('Array', function() {11  describe('#indexOf()', function() {12    it('should return -1 when the value is not present', function() {13      assert.equal(-1, [1,2,3].indexOf(4));14    });15  });16});17var assert = require('assert');18suite('Array', function() {19  suite('#indexOf()', function() {20    test('should return -1 when the value is not present', function() {21      assert.equal(-1, [1,2,3].indexOf(4));22    });23  });24});25var expect = require('chai').expect;26describe('Array', function() {27  describe('#indexOf()', function() {28    it('should return -1 when the value is not present', function() {29      expect([1,2,3].indexOf(4)).to.equal(-1);30    });31  });32});33var should = require('chai').should();34describe('Array', function() {35  describe('#indexOf()', function() {36    it('should return -1 when the value is not present', function() {37      [1,2,3].indexOf(4).should.equal(-1);38    });39  });40});41var assert = require('chai').assert;42describe('Array', function() {43  describe('#indexOf()', function() {44    it('should return -1 when the value is not present', function() {45      assert.equal(-1, [1,2,3].indexOf(4));46    });47  });48});49var expect = require('chai').expect;50describe('Array', function() {51  describe('#indexOf()', function() {52    it('should return -1 when the value is not present', function() {53      expect([1,2,3].indexOf(4)).to.equal(-1);54    });55  });Using AI Code Generation
1var assert = require('assert');2describe('Array', function(){3  describe('#indexOf()', function(){4    it('should return -1 when the value is not present', function(){5      assert.equal(-1, [1,2,3].indexOf(4));6    });7  });8});9    #indexOf()10  1 passing (5ms)11The assert.equal() method takes two parametersUsing AI Code Generation
1var assert = require('assert');2describe('Array', function() {3  describe('#indexOf()', function() {4    it('should return -1 when the value is not present', function() {5      assert.equal([1,2,3].indexOf(4), -1);6    });7  });8});9var assert = require('assert');10describe('Array', function() {11  describe('#indexOf()', function() {12    it('should return -1 when the value is not present', function() {13      assert.equal(-1, [1,2,3].indexOf(4));14    });15  });16});Using AI Code Generation
1var chai = require('chai');2var expect = chai.expect;3describe("Array", function() {4  describe("#indexOf()", function() {5    it("should return -1 when the value is not present", function() {6      expect([1,2,3].indexOf(5)).to.equal(-1);7      expect([1,2,3].indexOf(0)).to.equal(-1);8    });9  });10});11var chai = require('chai');12var expect = chai.expect;13describe("Array", function() {14  describe("#indexOf()", function() {15    it("should return -1 when the value is not present", function() {16      expect([1,2,3].indexOf(5)).to.equal(-1);17      expect([1,2,3].indexOf(0)).to.equal(-1);18    });19  });20});21var chai = require('chai');22var expect = chai.expect;23describe("Array", function() {24  describe("#indexOf()", function() {25    it("should return -1 when the value is not present", function() {26      expect([1,2,3].indexOf(5)).to.equal(-1);27      expect([1,2,3].indexOf(0)).to.equal(-1);28    });29  });30});31var chai = require('chai');32var expect = chai.expect;33describe("Array", function() {34  describe("#indexOf()", function() {35    it("should return -1 when the value is not present", function() {36      expect([1,2,3].indexOf(5)).to.equal(-1);37      expect([1,2,3].indexOf(0)).to.equal(-1);38    });39  });40});41var chai = require('chai');42var expect = chai.expect;43describe("Array", function() {44  describe("#indexOf()", function() {45    it("should return -1 when the value is not present", function() {46      expect([1,2,3].indexOf(5)).to.equal(-1);47      expect([1,2,3].indexOf(0)).to.equal(-1);48    });49  });50});Using AI Code Generation
1var assert = require('assert');2var test = require('selenium-webdriver/testing');3var webdriver = require('selenium-webdriver');4var By = webdriver.By;5var until = webdriver.until;6test.describe('Google Search', function() {7  var driver;8  test.before(function() {9    driver = new webdriver.Builder()10        .withCapabilities(webdriver.Capabilities.chrome())11        .build();12  });13  test.it('should append query to title', function() {14    driver.findElement(By.name('q')).sendKeys('webdriver');15    driver.findElement(By.name('btnG')).click();16    driver.wait(until.titleIs('webdriver - Google Search'), 1000);17  });18  test.after(function() {19    driver.quit();20  });21});Using AI Code Generation
1var expect = require('chai').expect;2var should = require('chai').should();3var assert = require('chai').assert;4var request = require('superagent');5var chai = require('chai');6var chaiAsPromised = require('chai-as-promised');7chai.use(chaiAsPromised);8chai.should();9var mocha = require('mocha');10var mochaAsPromised = require('mocha-as-promised');11mocha.use(mochaAsPromised);12var chaiHttp = require('chai-http');13chai.use(chaiHttp);14var chaiJsonSchema = require('chai-json-schema');15chai.use(chaiJsonSchema);16var chaiThings = require('chai-things');17chai.use(chaiThings);18var chaiFuzzy = require('chai-fuzzy');19chai.use(chaiFuzzy);20var chaiJquery = require('chai-jquery');21chai.use(chaiJquery);22var chaiUuid = require('chai-uuid');23chai.use(chaiUuid);24var chaiXml = require('chai-xml');25chai.use(chaiXml);26var chaiDatetime = require('chai-datetime');27chai.use(chaiDatetime);28var chaiXmlHttpRequest = require('chai-xml-http-request');29chai.use(chaiXmlHttpRequest);30var chaiSpies = require('chai-spies');31chai.use(chaiSpies);32var chaiArrays = require('chai-arrays');33chai.use(chaiArrays);34var chaiEnzyme = require('chai-enzyme');35chai.use(chaiEnzyme);36var chaiSubset = require('chai-subset');37chai.use(chaiSubset);Using AI Code Generation
1var assert = require('assert');2describe('Math', function() {3  describe('addition', function() {4    it('should return 3 when adding 1 and 2', function() {5      assert.equal(3, 1 + 2);6    });7  });8});9var assert = require('assert');10describe('Math', function() {11  describe('addition', function() {12    it('should return 3 when adding 1 and 2', function() {13      assert.equal(3, 1 + 2);14    });15  });16});17var assert = require('assert');18suite('Math', function() {19  suite('addition', function() {20    test('should return 3 when adding 1 and 2', function() {21      assert.equal(3, 1 + 2);22    });23  });24});25QUnit.test('Math.addition should return 3 when adding 1 and 2', function() {26  assert.equal(3, 1 + 2);27});28var assert = require('assert');29var expect = require('chai').expect;30describe('Math', function() {31  describe('addition', function() {32    it('should return 3 when adding 1 and 2', function() {33      expect(1 + 2).to.equal(3);34    });35  });36});37var assert = require('assert');38var should = require('chai').should();39describe('Math', function() {40  describe('addition', function() {41    it('should return 3 when adding 1 and 2', function() {42      (1 + 2).should.equal(3);43    });44  });45});46  1 passing (17ms)Using AI Code Generation
1var expect = require('chai').expect;2var should = require('chai').should();3var sum = require('../sum.js');4describe('sum', function() {5  it('should return 4 when passed 2 and 2', function() {6    sum(2, 2).should.equal(4);7  });8});9module.exports = function sum(a, b) {10  return a + b;11};121 passing (8ms)13var expect = require('chai').expect;14var request = require('supertest');15var app = require('../app');16describe('GET /', function() {17  it('responds with a 200 status code', function(done) {18    request(app).get('/').expect(200, done);19  });20});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!!
