UNPKG

randex

Version:

Generates random filename, username, email, name, full name, etc for test purposes.

67 lines (66 loc) 3.49 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var set_1 = require("../basic/set"); var custom_1 = require("../custom"); var test_util_1 = require("./test-util"); var r = set_1.RandexSetUtil; function splitFileName(fullFileName) { var matches = fullFileName.match(/\.[a-z]+$/); var extension = (matches === null || matches === void 0 ? void 0 : matches[0]) || ""; var fileName = fullFileName.replace(extension, ""); extension = extension.replace(/^\./, ""); return [fileName, extension]; } function testFileName(options) { var fullFileName = options.fullFileName, _a = options.fileNameLength, fileNameLength = _a === void 0 ? r.defaultFileNameLength : _a, _b = options.extensionLength, extensionLength = _b === void 0 ? r.defaultExtensionLength : _b, extension = options.extension; var _c = splitFileName(fullFileName), fileName = _c[0], fileExtension = _c[1]; // last char only english test_util_1.TestUtil.testInSet(fileName[fileName.length - 1], ["english", "number"], 1); test_util_1.TestUtil.testInSetRange(fileName, ["english", "number"], r.fileNameExtraChars, fileNameLength); if (extension) { expect(extension).toBe(fileExtension); } else { test_util_1.TestUtil.testInSet(fileExtension, "english", extensionLength); } } describe("randomFileName", function () { it("simple", function () { test_util_1.TestUtil.loop(function () { var fullFileName = custom_1.Randex.fileName(); testFileName({ fullFileName: fullFileName }); }); }); it("params: fileNameLength", function () { var fileNameLength = [10, 15]; test_util_1.TestUtil.loop(function () { var fullFileName = custom_1.Randex.fileName({ fileNameLength: fileNameLength }); testFileName({ fullFileName: fullFileName, fileNameLength: fileNameLength }); fullFileName = custom_1.Randex.fileName(fileNameLength); testFileName({ fullFileName: fullFileName, fileNameLength: fileNameLength }); }); }); it("params: extensionLength", function () { var extensionLength = [10, 15]; test_util_1.TestUtil.loop(function () { var fullFileName = custom_1.Randex.fileName({ extensionLength: extensionLength }); testFileName({ fullFileName: fullFileName, extensionLength: extensionLength }); fullFileName = custom_1.Randex.fileName(r.defaultFileNameLength, extensionLength); testFileName({ fullFileName: fullFileName, fileNameLength: r.defaultFileNameLength, extensionLength: extensionLength }); }); }); it("params2: extension", function () { var fileNameLength = [10, 15]; var extension = "xml"; test_util_1.TestUtil.loop(function () { var fullFileName = custom_1.Randex.fileName({ extension: extension }); testFileName({ fullFileName: fullFileName, extension: extension }); fullFileName = custom_1.Randex.fileName(extension); testFileName({ fullFileName: fullFileName, extension: extension }); fullFileName = custom_1.Randex.fileName("." + extension); testFileName({ fullFileName: fullFileName, extension: extension }); fullFileName = custom_1.Randex.fileName(fileNameLength, extension); testFileName({ fullFileName: fullFileName, fileNameLength: fileNameLength, extension: extension }); }); }); });