Added input validation to the Authentication middleware #5

Merged
javier merged 12 commits from library/user-agent-middleware into main 2025-10-12 19:33:46 +00:00
2 changed files with 23 additions and 15 deletions
Showing only changes of commit a47a3a464b - Show all commits
@@ -29,6 +29,17 @@ struct NotEmptyValidationRule: InputValidationRule {
}
// MARK: - Definitions
extension InputValidationRule where Self == NotEmptyValidationRule {
// MARK: Constants
/// A validation rule that checks whether an input is empty or not.
static var notEmpty: Self { .init() }
}
// MARK: - Helpers
private extension NotEmptyValidationRule {
@@ -54,10 +65,3 @@ private extension NotEmptyValidationRule {
}
}
// MARK: - Constants
extension InputValidationRule where Self == NotEmptyValidationRule {
/// A validation rule that checks whether an input is empty or not.
static var notEmpty: Self { .init() }
}
@@ -29,6 +29,17 @@ struct NotNilValidationRule: InputValidationRule {
}
// MARK: - Definitions
extension InputValidationRule where Self == NotNilValidationRule {
// MARK: Constants
/// A validation rule that checks whether an input is nil or not.
static var notNil: Self { .init() }
}
// MARK: - Helpers
private extension NotNilValidationRule {
@@ -43,7 +54,7 @@ private extension NotNilValidationRule {
/// - Returns: A flag that indicates whether a given input has been validated or not.
/// - Throws: An error of type ``InputValidatorError`` in case the validation failed.
func validate(input: String?) throws -> Bool {
guard let input else {
guard input != nil else {
throw InputValidationError.inputIsNil
}
@@ -51,10 +62,3 @@ private extension NotNilValidationRule {
}
}
// MARK: - Constants
extension InputValidationRule where Self == NotNilValidationRule {
/// A validation rule that checks whether an input is nil or not.
static var notNil: Self { .init() }
}