| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 | "use strict";exports.__esModule = true;/* eslint-disable @typescript-eslint/no-var-requires *//* eslint-disable no-console */var Benchmark = require("benchmark");var mod_js_1 = require("./mod.js");var fast_levenshtein_1 = require("fast-levenshtein");var fs = require("fs");var jslevenshtein = require("js-levenshtein");var leven = require("leven");var levenshteinEditDistance = require("levenshtein-edit-distance");var suite = new Benchmark.Suite();var randomstring = function (length) {    var result = "";    var characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";    var charactersLength = characters.length;    for (var i = 0; i < length; i++) {        result += characters.charAt(Math.floor(Math.random() * charactersLength));    }    return result;};var randomstringArr = function (stringSize, arraySize) {    var i = 0;    var arr = [];    for (i = 0; i < arraySize; i++) {        arr.push(randomstring(stringSize));    }    return arr;};var arrSize = 1000;if (!fs.existsSync("data.json")) {    var data_1 = [        randomstringArr(4, arrSize),        randomstringArr(8, arrSize),        randomstringArr(16, arrSize),        randomstringArr(32, arrSize),        randomstringArr(64, arrSize),        randomstringArr(128, arrSize),        randomstringArr(256, arrSize),        randomstringArr(512, arrSize),        randomstringArr(1024, arrSize),    ];    fs.writeFileSync("data.json", JSON.stringify(data_1));}var data = JSON.parse(fs.readFileSync("data.json", "utf8"));var _loop_1 = function (i) {    var datapick = data[i];    if (process.argv[2] !== "no") {        suite            .add("".concat(i, " - js-levenshtein"), function () {            for (var j = 0; j < arrSize - 1; j += 2) {                jslevenshtein(datapick[j], datapick[j + 1]);            }        })            .add("".concat(i, " - leven"), function () {            for (var j = 0; j < arrSize - 1; j += 2) {                leven(datapick[j], datapick[j + 1]);            }        })            .add("".concat(i, " - fast-levenshtein"), function () {            for (var j = 0; j < arrSize - 1; j += 2) {                (0, fast_levenshtein_1.get)(datapick[j], datapick[j + 1]);            }        })            .add("".concat(i, " - levenshtein-edit-distance"), function () {            for (var j = 0; j < arrSize - 1; j += 2) {                levenshteinEditDistance(datapick[j], datapick[j + 1]);            }        });    }    suite.add("".concat(i, " - fastest-levenshtein"), function () {        for (var j = 0; j < arrSize - 1; j += 2) {            (0, mod_js_1.distance)(datapick[j], datapick[j + 1]);        }    });};// BENCHMARKSfor (var i = 0; i < 9; i++) {    _loop_1(i);}var results = new Map();suite    .on("cycle", function (event) {    console.log(String(event.target));    if (results.has(event.target.name[0])) {        results.get(event.target.name[0]).push(event.target.hz);    }    else {        results.set(event.target.name[0], [event.target.hz]);    }})    .on("complete", function () {    console.log(results);})    // run async    .run({ async: true });
 |