stringzy
Version:
A versatile string manipulation library providing a range of text utilities for JavaScript and Node.js applications.
51 lines (50 loc) • 3.29 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const node_test_1 = require("node:test");
const strict_1 = __importDefault(require("node:assert/strict"));
const isLowerCase_1 = require("../../validations/isLowerCase");
(0, node_test_1.describe)('isLowerCase', () => {
(0, node_test_1.it)('returns true for all lowercase alphabetic strings', () => {
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('hello'), true);
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('world'), true);
});
(0, node_test_1.it)('returns true for strings with lowercase letters, spaces, digits, or special characters', () => {
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('hello world!'), true);
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('abc123'), true);
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('lower_case-only!!'), true);
});
(0, node_test_1.it)('returns false if any uppercase alphabetic character is present', () => {
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('Hello'), false);
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('worldWide'), false);
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('123ABC'), false);
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('@@Good@@'), false);
});
(0, node_test_1.it)('returns false for an empty string', () => {
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)(''), false);
});
(0, node_test_1.it)('returns true for strings with only non-alphabetic characters (digits/symbols/spaces)', () => {
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('12345'), false); // no letters
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('!@#$%^&*()'), false);
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)(' '), false); // spaces only
});
(0, node_test_1.it)('returns true for single lowercase letters', () => {
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('a'), true);
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('z'), true);
});
(0, node_test_1.it)('returns false for single uppercase letters', () => {
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('A'), false);
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('Z'), false);
});
(0, node_test_1.it)('handles mixed alphanumeric correctly', () => {
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('abc123xyz'), true);
strict_1.default.strictEqual((0, isLowerCase_1.isLowerCase)('abcXYZ123'), false);
});
(0, node_test_1.it)('throws an error if input is not a string', () => {
strict_1.default.throws(() => (0, isLowerCase_1.isLowerCase)(123), /Input must be a string/);
strict_1.default.throws(() => (0, isLowerCase_1.isLowerCase)(null), /Input must be a string/);
strict_1.default.throws(() => (0, isLowerCase_1.isLowerCase)(undefined), /Input must be a string/);
});
});