public async Task<IActionResult> PostCheckUsername(string username) {
   Guid? userIdByLogin = await Query.Execute(new UserIdByLogin(username));
   ValidateUsername validation = new ValidateUsername(username, userIdByLogin);
   CommandRejectionReason? reasonInvalid = validation.Errors
     .SelectMany(x => x.Value.Select(y => y.Reason))
     .Cast<CommandRejectionReason?>().FirstOrDefault();
   return Ok(new UsernameCheckResponseModel {
     ReasonInvalid = reasonInvalid,
   });
 }
        public string this[string name]
        {
            get
            {
                string result   = null;
                var    validate = new ValidateUsername();


                switch (name)
                {
                case "Username":
                    if (string.IsNullOrWhiteSpace(Username))
                    {
                        result = "Username can not be empty!";
                    }
                    else if (Username.Length < 5)
                    {
                        result = "Username has to contain from 5 to 12 symbols!";
                    }

                    break;

                case "Password":
                    if (string.IsNullOrWhiteSpace(Password))
                    {
                        result = "Field cannot be empty";
                    }
                    else if (Password.Length < 8)
                    {
                        result = "New password has to be at least 8 symbols long!";
                    }
                    else if (validate.IsPasswordValid(Password) is false)
                    {
                        result = validate.PasswordErrorMessage(Password);
                    }

                    break;
                }


                if (ErrorCollection.ContainsKey(name))
                {
                    ErrorCollection[name] = result;
                }
                else if (result != null)
                {
                    ErrorCollection.Add(name, result);
                }

                NotifyPropertyChanged("ErrorCollection");
                return(result);
            }
        }
        public void ValidateUsernameSucceeds()
        {
            // Pass
            Assert.IsTrue(ValidateUsername.Validate("asdda"));
            Assert.IsTrue(ValidateUsername.Validate("____"));
            Assert.IsTrue(ValidateUsername.Validate("p1pp1"));
            Assert.IsTrue(ValidateUsername.Validate("asd43_34"));

            // Fail
            Assert.IsFalse(ValidateUsername.Validate("a"));
            Assert.IsFalse(ValidateUsername.Validate("Hass"));
            Assert.IsFalse(ValidateUsername.Validate("Hasd_12ssssssssssssssasasasasasssasassss"));
            Assert.IsFalse(ValidateUsername.Validate(""));
            Assert.IsFalse(ValidateUsername.Validate("012"));
            Assert.IsFalse(ValidateUsername.Validate("asd43 34"));
        }
Beispiel #4
0
 public ForgotPassword()
 {
     InitializeComponent();
     DataContext = new ValidateUsername();
 }