#pragma warning disable CS8765 // Nullability of type of parameter doesn't match overridden member (possibly because of nullability attributes).
    protected override ValidationResult IsValid(object value,
#pragma warning restore CS8765 // Nullability of type of parameter doesn't match overridden member (possibly because of nullability attributes).
                                                ValidationContext validationContext)
    {
        if (value == null)
        {
            return(ValidationResult.Success !);
        }

        var username = value.ToString();

        if (string.IsNullOrEmpty(username))
        {
            return(ValidationResult.Success !);
        }

        if (username.Length > 6)
        {
            if (ValidDiscordUsernameAttributeHelpers.HasHashtagFourFromEnd(username) && ValidDiscordUsernameAttributeHelpers.HasFourDigitNumAtEnd(username))
            {
                return(ValidationResult.Success !);
            }
        }

        return(new ValidationResult(GetErrorMessage()));
    }
Esempio n. 2
0
        public void GiveFalseIfNoHashtagInString()
        {
            var input = "discord";

            var output = ValidDiscordUsernameAttributeHelpers.HasHashtagFourFromEnd(input);

            Assert.False(output);
        }
        public void GiveFalseIfNoNumInString()
        {
            var input = "discord";

            var output = ValidDiscordUsernameAttributeHelpers.HasFourDigitNumAtEnd(input);

            Assert.False(output);
        }
Esempio n. 4
0
        public void GiveTrueIfHashtag4FromEnd()
        {
            var input = "discord#wwtw";

            var output = ValidDiscordUsernameAttributeHelpers.HasHashtagFourFromEnd(input);

            Assert.True(output);
        }
        public void GiveTrueGiven4DigitNumAtEnd()
        {
            var input = "discord1234";

            var output = ValidDiscordUsernameAttributeHelpers.HasFourDigitNumAtEnd(input);

            Assert.True(output);
        }