예제 #1
0
        public void ValidateTest()
        {
            CardTemplateTitleValidator validator = new CardTemplateTitleValidator();
            string error = validator.Validate(new CardTemplate(), null);

            Assert.IsFalse(string.IsNullOrEmpty(error));
            error = validator.Validate(new CardTemplate(), "");
            Assert.IsFalse(string.IsNullOrEmpty(error));
            error = validator.Validate(new CardTemplate(), "test");
            Assert.IsTrue(string.IsNullOrEmpty(error));
        }
        ///<inheritdoc/>
        public override string Validate(CardTemplate entity)
        {
            string error = new CardTemplateTitleValidator().Validate(entity, entity.Title);

            if (!string.IsNullOrEmpty(error))
            {
                return(error);
            }
            if (Context.Set <CardTemplate>().Any(template => template.CardTemplateId != entity.CardTemplateId &&
                                                 template.Title == entity.Title &&
                                                 template.UserId == entity.UserId))
            {
                return(Errors.CardTemplateTitleNotUnique.FormatWith(entity.Title));
            }
            return(null);
        }