Skip to content

iosChallenge

Joey Rahme requested to merge Joey-TDG/ios-interview-challenge:iosChallenge into main

SignupForm.swift: Contains the SignupForm class, which represents the main form with login and contact sections and implements validation for the entire form.

Fields.swift: Contains the following structs, each representing a specific field with validation rules:

Username: Represents the Username field with a Length validation rule. Password: Represents the Password field with Length and Contains validation rules. Email: Represents the Email field with a Format validation rule. PhoneNumber: Represents the PhoneNumber field with a Format validation rule. FormSection.swift: Contains the FormSection protocol, which represents a section within a form, containing multiple fields. It requires implementing the fields property and provides a default implementation for the validate() method, which validates all fields in the section.

Form.swift: Contains the Form protocol, representing a form containing multiple sections. It requires implementing the sections property and provides a default implementation for the validate() method, which validates all sections in the form.

SignupFormTests.swift: Contains test cases to verify the functionality of the SignupForm class and its fields' validation rules.

Merge request reports