private bool IsValidOrderInput(string input, string request) { switch (request) { case NameRequest: return(_orderInputValidator.IsValidName(input)); case AddressRequest: return(_orderInputValidator.IsValidAddress(input)); case DueDateRequest: return(_orderInputValidator.IsValidDueDate(input, DateInputFormat)); default: return(_orderInputValidator.IsValidQuantity(input)); } }
private Customer GetCustomer(string[] orderDetails) { var nameIndex = Array.IndexOf(_csvFileHeaders, nameHeader); var name = orderDetails[nameIndex]; if (!_orderInputValidator.IsValidName(name)) { throw (new InvalidInputException($"{name} is an invalid input - Name should start with alphabet letter and with the minimal length of 3 characters.")); } var addressIndex = Array.IndexOf(_csvFileHeaders, addressHeader); var address = orderDetails[addressIndex]; if (!_orderInputValidator.IsValidAddress(address)) { throw (new InvalidInputException($"{address} is an invalid input - Address should have the minimal length of 10 characters.")); } return(new Customer(name, address)); }