Skip to content

[WIP] Implement Email Format Validation - #16

Draft
Merango wants to merge 11 commits into
NicolaFattore:f29f55ba-dc41-4222-9358-a90ec78f48aefrom
Merango:feature-email-validation-1747209655
Draft

[WIP] Implement Email Format Validation#16
Merango wants to merge 11 commits into
NicolaFattore:f29f55ba-dc41-4222-9358-a90ec78f48aefrom
Merango:feature-email-validation-1747209655

Conversation

@Merango

@Merango Merango commented May 14, 2025

Copy link
Copy Markdown

Implement Email Format Validation

Description

Task

Implement Email Format Validation

Acceptance Criteria

  • Implement RFC 5322 standard email format validation regex
    Ensure email validation prevents registration with invalid email formats
    Add database-level unique constraint on email field
    Create unit tests covering at least 10 different email format scenarios (valid and invalid)
    Implement case-insensitive email uniqueness check

Summary of Work

This pull request adds email format validation to improve form input reliability and user experience across the JobIt application.

Key Changes:

  • Implement robust email format validation
  • Ensure consistent validation across registration and contact forms
  • Provide clear user feedback for invalid email formats

Proposed Implementation:

  • Create a reusable email validation utility function
  • Add regex-based email validation pattern
  • Handle different email format edge cases
  • Integrate validation with existing form components

Validation Approach:

  • Support standard email formats (user@domain.com)
  • Reject obviously invalid formats
  • Allow common email subdomains and TLDs
  • Prevent overly restrictive validation

Changes Made

  • Create email validation utility function
  • Update form components to use email validation
  • Add email format error handling

Tests

  • Verify email validation utility handles valid email formats
  • Confirm rejection of invalid email formats
  • Test email validation integration in form components

Signatures

Staking Key

84mPEB3qLaB2KQr1RXxNgYDF5DSv5ZyuDPpb9qeeNyyT: 2Cy5vQUroNVpiWbijBiv2PzN2YRNdsZspKCC4pTjUCDKd2qmFfJZX6UjhRhdgvgx3YRZqVCwcZmqMipUPaGBRA7DbwoScnotJKipBxtMr4UJHnTLUx5A7USUKwgn8vweVrSXnmA1PEn2zJbG5277fnAqTaxCvqvsojJzZmf7s7uBUAJ8N33shXiyREzdKEHTtrGZXYfyRs6iodXLn3iBreYnPeLbfQHhKLbzUruUs6WTwrfMwZYBmW9zgzSMF9NWngiDZG3r1cHDvJLXZF38fP6gQ9xZ6DSpdWnWXSsFter3n1vmjfAVqhCrigf9JeARkrEfGPm826r3yD25HL8QnfUd77xPa2hMLvWfw7Y5qCk67suXPQ6qdqhVT1QgtuZvyZHMbzjJhypuSsUdvpcHZyjDYNDQpGZS

Public Key

FLcUWedFSfvYeGjtnoXqgNtvtqEBCKwUK7Qn48hGnwsk: jewjz1ddqK9z9KPwaEZ1is1NaD1QNP2HgdJJiwknwVbVekqeGvXiBUu2QTxrfRXLougtHcQLTad3LsQe2FiTLKwT3A8AYvytPnpNq8wBAMe821GTm1LEnDZE1jGAi16qKLDaoX3ChUxoxymjDduGhFbbHSTKPPJSrTyoUWiWsFDbMAGRvKm1s8gUEFvMFxe6cCXihrawwgVi6n5D36DhpaYWJVxZBpKbws7pGcL3QxDizgwgXHcQd1EUyekqL6myC6gQCLpEyS3GbVzhA8NFCqpRhqPjB3SLZxA6yXevWWSVsVzZvE7fff9ghmusFwCDeseFLiirDo1MeQ3Eh6Bh7VEkEdUZactuuqimcUGMnkYcr9M5E5EpEWyDeB3cJQYx1bqTAfUbfo6uxN4CKPPa27ow9jEktoW

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant