apphouse
Version:
Component library for React that uses observable state management and theme-able components.
19 lines (16 loc) • 878 B
text/typescript
import { isValidEmail } from './isValidEmail';
describe('isValidEmail', () => {
it('returns true for valid email addresses', () => {
expect(isValidEmail('test@example.com')).toBe(true);
expect(isValidEmail('john.doe@example.co.uk')).toBe(true);
expect(isValidEmail('jane_doe12345@example123.co')).toBe(true);
});
it('returns false for invalid email addresses', () => {
expect(isValidEmail('')).toBe(false); // Empty string
expect(isValidEmail('test@example')).toBe(false); // Missing top-level domain
expect(isValidEmail('test.example.com')).toBe(false); // Invalid top-level domain
expect(isValidEmail('@example.com')).toBe(false); // Missing local-part
expect(isValidEmail('test@example..com')).toBe(false); // Consecutive periods in domain
expect(isValidEmail('test@ example.com')).toBe(false); // Space in email address
});
});