randex
Version:
Generates random filename, username, email, name, full name, etc for test purposes.
135 lines (134 loc) • 5.14 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TestUtil = void 0;
var const_1 = require("../basic/const");
var set_1 = require("../basic/set");
var TestUtil = /** @class */ (function () {
function TestUtil() {
}
TestUtil.testIn = function (value, length, action) {
if (length === void 0) { length = 1; }
if (typeof length === "number") {
expect(value.length).toBe(length);
}
else if (Array.isArray(length)) {
var min = length[0], max = length[1];
expect(value.length).toBeGreaterThanOrEqual(min);
expect(value.length).toBeLessThanOrEqual(max);
}
if (value) {
action();
}
};
TestUtil.loop = function (action) {
for (var i = 0; i < 100; i++) {
action(i);
}
};
TestUtil.testInSet = function (value, set, length) {
if (length === void 0) { length = 1; }
TestUtil.testIn(value, length, function () {
expect(TestUtil.inSet(value, set)).toBeTruthy();
});
};
TestUtil.testInSetRange = function (value, set, range, length) {
if (length === void 0) { length = 1; }
TestUtil.testIn(value, length, function () {
expect(TestUtil.inSet(value, set, range)).toBeTruthy();
});
};
TestUtil.testInRange = function (value, range, length) {
if (length === void 0) { length = 1; }
TestUtil.testIn(value, length, function () {
expect(TestUtil.inRange(value, range)).toBeTruthy();
});
};
TestUtil.testInBoth = function (value, set, range, length) {
if (length === void 0) { length = 1; }
TestUtil.testIn(value, length, function () {
expect(TestUtil.inBoth(value, set, range)).toBeTruthy();
});
};
TestUtil.inRange = function (value, range) {
for (var i = 0; i < value.length; i++) {
if (!range.includes(value[i])) {
return false;
}
}
return value.length > 0;
};
TestUtil.inSet = function (value, set, range) {
var fullRange = set_1.RandexSetUtil.toRange(set) + (range ? range : "");
return TestUtil.inRange(value, fullRange);
};
TestUtil.inBoth = function (value, set, range) {
var fullRange = set_1.RandexSetUtil.toRange(set) + range;
return TestUtil.inRange(value, fullRange);
};
TestUtil.isEmailValid = function (email) {
return String(email)
.toLowerCase()
.match(/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|.(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/);
};
TestUtil.isUsernameValid = function (email) {
return String(email)
.toLowerCase()
.match(/^[a-z][a-z0-9]{5,}$/);
};
TestUtil.isNameValid = function (email) {
return String(email).match(/^[A-Z][a-z]{1,}$/);
};
TestUtil.isWordValid = function (text, length) {
if (length === void 0) { length = const_1.DEFAULT_WORD_RANGE; }
var l = TestUtil.getLength(length);
return String(text).match(new RegExp("^[a-z]{".concat(l, "}$")));
};
TestUtil.isSentenceValid = function (text, length) {
if (length === void 0) { length = const_1.DEFAULT_SENTENCE_RANGE; }
var splits = text.split(" ");
if (Array.isArray(length)) {
var min = length[0], max = length[1];
return splits.length >= min && splits.length <= max;
}
else {
return splits.length === length;
}
};
TestUtil.isPhraseValid = function (text, length) {
if (length === void 0) { length = const_1.DEFAULT_PHRASE_RANGE; }
var splits = text.split(" ");
if (Array.isArray(length)) {
var min = length[0], max = length[1];
return splits.length >= min && splits.length <= max;
}
else {
return splits.length === length;
}
};
TestUtil.isUpperCharValid = function (value, length) {
if (length === void 0) { length = 1; }
var l = TestUtil.getLength(length);
return String(value).match(new RegExp("^[A-Z]{".concat(l, "}$")));
};
TestUtil.isLowerCharValid = function (value, length) {
if (length === void 0) { length = 1; }
var l = TestUtil.getLength(length);
return String(value).match(new RegExp("^[a-z]{".concat(l, "}$")));
};
TestUtil.isFullNameValid = function (email) {
return String(email).match(/^[A-Z][a-z]{1,}[ ][A-Z][a-z]{1,}$/);
};
TestUtil.isFileNameValid = function (email) {
return String(email)
.toLowerCase()
.match(/^[a-z0-9_\.]{2,}$/);
};
TestUtil.inNumberRange = function (value, range) {
return value >= range[0] && value <= range[1];
};
TestUtil.getLength = function (length) {
return Array.isArray(length) ? "".concat(length[0], ",").concat(length[1]) : length;
};
return TestUtil;
}());
exports.TestUtil = TestUtil;