Пример #1
0
 public UserService(MirzaDbContext dbContext, ILogger <UserService> logger)
 {
     _dbContext        = dbContext;
     _logger           = logger;
     _userValidator    = new UserValidator();
     _workLogValidator = new WorkLogValidator();
     _tagValidator     = new TagValidator();
 }
Пример #2
0
        public void CanValidateIdNotEmpty()
        {
            _methodProvider.Setup(p => p.GetMethodUpperName()).Returns("PUT");
            _tagValidator = new TagValidator(_tagValidationService.Object, _categoryValidationService.Object,
                                             _methodProvider.Object);

            var result = _tagValidator.TestValidate(new TagDto
            {
                Id   = Guid.Empty,
                Name = "Pizza"
            });

            result.ShouldHaveValidationErrorFor(c => c.Id);
        }
Пример #3
0
        public void CanValidateNameChangedAndNotExists()
        {
            _methodProvider.Setup(p => p.GetMethodUpperName()).Returns("PUT");
            _tagValidator = _tagValidator = new TagValidator(_tagValidationService.Object, _categoryValidationService.Object,
                                                             _methodProvider.Object);

            var result = _tagValidator.TestValidate(new TagDto
            {
                Id   = _tags[1].Id,
                Name = "Pizza"
            });

            result.ShouldHaveValidationErrorFor(c => c.Name);
        }
Пример #4
0
        private void RegisterUserTags(SocialNetworkContext db)
        {
            Console.WriteLine("Enter a tag value or leave empty to continue.");

            while (true)
            {
                Console.Write("Title of tag: ");
                string tagValue = Console.ReadLine();

                if (string.IsNullOrEmpty(tagValue) || string.IsNullOrWhiteSpace(tagValue))
                {
                    Console.WriteLine("Continuing..");
                    break;
                }
                else
                {
                    if (!TagValidator.ValidateTag(tagValue))
                    {
                        tagValue = TagTransformer.Transform(tagValue);
                    }

                    if (TagValidator.ValidateTag(tagValue))
                    {
                        var tag = new Tag
                        {
                            Title = tagValue
                        };

                        if (db.Tags.Any(t => t.Title == tagValue))
                        {
                            Console.WriteLine($"Database already contains such a tag: {tagValue}");
                        }
                        else
                        {
                            db.Tags.Add(tag);

                            db.SaveChanges();

                            Console.WriteLine($"Tag: {tagValue} was added to the database.");
                        }
                    }
                    else
                    {
                        Console.WriteLine("Please enter a valid tag.");
                    }
                }
            }
        }
Пример #5
0
        public void CanSaveAllEntities()
        {
            using (var session = factory.OpenSession())
            {
                using (var tran = session.BeginTransaction())
                {
                    var blog = new Blog();
                    var user = new User();
                    var post = new Post();
                    var tag = new Tag();
                    var postComment = new PostComment();

                    var configuration = new BlogConfiguration();
                    configuration.PageSize = 3;
                    configuration["osman"] = "mahmut";

                    user.UserName = "******";
                    user.Password = "******";
                    user.Email = "*****@*****.**";
                    user.Blogs.Add(blog);

                    blog.Configuration = configuration;
                    blog.Writers.Add(user);
                    blog.Title = "my blog";
                    blog.Name = "My Blog";
                    blog.Founder = user;
                    blog.Posts.Add(post);
                    blog.Host = "localhost";

                    post.Blog = blog;
                    post.Content = "hello";
                    post.Publisher = user;
                    post.DateCreated = DateTime.Now;
                    post.DatePublished = DateTime.Now.AddMinutes(3);
                    post.Title = "post title";
                    post.FriendlyTitle = post.Title.Replace(' ', '_').ToLower();
                    post.AddComment(postComment, null);

                    postComment.Post = post;
                    postComment.Date = DateTime.Now.AddMinutes(6);
                    postComment.Email = "*****@*****.**";
                    postComment.Name = "Some One";
                    postComment.Comment = "Some One wrote here!!";

                    tag.Name = "Tag";
                    tag.FriendlyName = "Tagged";
                    tag.Posts.Add(post);
                    post.Tags.Add(tag);

                    var blogVal = new BlogValidator();
                    blogVal.ValidateAndThrowException(blog);

                    var postVal = new PostValidator();
                    postVal.ValidateAndThrowException(post);

                    var postCommVal = new PostCommentValidator();
                    postCommVal.ValidateAndThrowException(postComment);

                    var userVal = new UserValidator();
                    userVal.ValidateAndThrowException(user);

                    var tagVal = new TagValidator();
                    tagVal.ValidateAndThrowException(tag);

                    session.Save(user);
                    session.Save(blog);
                    session.Save(post);
                    session.Save(postComment);
                    session.Save(tag);

                    tran.Commit();
                }
            }

            using (var session = factory.OpenSession())
            {
                var item = session.CreateCriteria(typeof (Blog)).UniqueResult<Blog>();
                var pageSize = item.Configuration.PageSize;
                Assert.That(pageSize, Is.EqualTo(3));
            }
        }
Пример #6
0
        public TagValidatorTests()
        {
            _tagValidationService      = new Mock <ITagValidationService>();
            _categoryValidationService = new Mock <ICategoryValidationService>();
            _methodProvider            = new Mock <IMethodProvider>();

            _tagValidator = new TagValidator(
                _tagValidationService.Object, _categoryValidationService.Object, _methodProvider.Object);

            _tags = new List <TagDto>
            {
                new TagDto
                {
                    Id   = Guid.NewGuid(),
                    Name = "Pizza"
                },
                new TagDto
                {
                    Id   = Guid.NewGuid(),
                    Name = "Sushi"
                }
            };

            _tagValidationService.Setup(s => s.TagExistsAsync(It.IsAny <Guid>(), CancellationToken.None))
            .Returns((Guid id, CancellationToken token) =>
                     Task.FromResult(_tags.Any(c => c.Id == id)));

            _tagValidationService.Setup(s => s.TagIdNotExistsAsync(It.IsAny <Guid>(), CancellationToken.None))
            .Returns((Guid id, CancellationToken token) =>
                     Task.FromResult(_tags.All(c => c.Id != id)));

            _tagValidationService.Setup(s => s.TagNameNotExistsAsync(It.IsAny <string>(), CancellationToken.None))
            .Returns((string name, CancellationToken token) =>
                     Task.FromResult(_tags.All(c => c.Name != name)));

            _tagValidationService.Setup(s => s.TagNameChangedAndNotExistsAsync(It.IsAny <Guid>(),
                                                                               It.IsAny <string>(), CancellationToken.None))
            .Returns((Guid id, string name, CancellationToken token) =>
            {
                var category = _tags.First(c => c.Id == id);
                if (category.Name == name)
                {
                    return(Task.FromResult(true));
                }

                return(Task.FromResult(_tags.All(c => c.Name != name)));
            });

            var categories = new List <CategoryDto>
            {
                new CategoryDto
                {
                    Id   = Guid.NewGuid(),
                    Name = "Food"
                },
                new CategoryDto
                {
                    Id   = Guid.NewGuid(),
                    Name = "Sport"
                }
            };

            _categoryValidationService.Setup(s => s.CategoryExistsAsync(It.IsAny <Guid>(), CancellationToken.None))
            .Returns((Guid id, CancellationToken token) =>
                     Task.FromResult(categories.Any(c => c.Id == id)));
        }