UNPKG

randex

Version:

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

61 lines (60 loc) 3.04 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 splitEmail(email) { var _a = email.split("@"), prefix = _a[0], domain = _a[1]; var _b = domain.split("."), lowDomain = _b[0], hightDomain = _b[1]; return [prefix, domain, lowDomain, hightDomain]; } function testEmail(options) { var email = options.email, _a = options.prefixLength, prefixLength = _a === void 0 ? r.defaultEmailPrefixLength : _a, _b = options.hightDomainLength, hightDomainLength = _b === void 0 ? r.defaultHightDomainEmailLength : _b, _c = options.lowDomainLength, lowDomainLength = _c === void 0 ? r.defaultLowDomainEmailLength : _c, emailDomain = options.domain; var _d = splitEmail(email), prefix = _d[0], domain = _d[1], lowDomain = _d[2], hightDomain = _d[3]; // // last char only english test_util_1.TestUtil.testInSet(prefix, [["english", "l"], "number"], prefixLength); if (emailDomain) { expect(emailDomain).toBe(domain); } else { test_util_1.TestUtil.testInSet(lowDomain, ["english"], lowDomainLength); test_util_1.TestUtil.testInSet(hightDomain, ["english"], hightDomainLength); } } describe("randomEmail", function () { it("simple", function () { test_util_1.TestUtil.loop(function () { var email = custom_1.Randex.email(); testEmail({ email: email }); }); }); it("options: prefixLength", function () { var prefixLength = [10, 15]; test_util_1.TestUtil.loop(function () { var email = custom_1.Randex.email({ prefixLength: prefixLength }); testEmail({ email: email, prefixLength: prefixLength }); email = custom_1.Randex.email(prefixLength); testEmail({ email: email, prefixLength: prefixLength }); }); }); it("options: hightDomainLength, lowDomainLength", function () { var hightDomainLength = 8; var lowDomainLength = 12; test_util_1.TestUtil.loop(function () { var email = custom_1.Randex.email({ hightDomainLength: hightDomainLength, lowDomainLength: lowDomainLength }); testEmail({ email: email, hightDomainLength: hightDomainLength, lowDomainLength: lowDomainLength }); email = custom_1.Randex.email(r.defaultEmailPrefixLength, lowDomainLength, hightDomainLength); testEmail({ email: email, hightDomainLength: hightDomainLength, lowDomainLength: lowDomainLength, prefixLength: r.defaultEmailPrefixLength }); }); }); it("options: domain", function () { var domain = "delta.com"; test_util_1.TestUtil.loop(function () { var email = custom_1.Randex.email({ domain: domain }); testEmail({ email: email, domain: domain }); email = custom_1.Randex.email(domain); testEmail({ email: email, domain: domain }); }); }); });