コード例 #1
0
        private static async Task DoWork(SampleContext inputContext, SampleContext outputContext, Stopwatch doworkWatch)
        {
            doworkWatch.Start();
            using (inputContext)
            {
                using (outputContext)
                {
                    using (PostService svc = new PostService(inputContext))
                    {
                        svc.CreateNewPost(1, "sampleSubject", "sampleBody");
                        //svc.DeletPostWithId(2);
                        //svc.CreateNewPost(1, "sampleSubject", "sampleBody");

                        var allPosts = svc.GetAllPost().ToList();

                        allPosts.Count.ShouldBe(2);

                        var result = await inputContext.CompareTo(outputContext);

                        result.AreEqual.ShouldBe(true, result.ToString());
                    }
                }
            }
            doworkWatch.Stop();
        }
コード例 #2
0
        public async Task Should_CreateTwoPostAndDeleteOne()
        {
            string test = "test31";

            using (SampleContext ctx = GetInputContext(test))
            {
                using (PostService svc = new PostService(ctx))
                {
                    svc.CreateNewPost(3, "NewPost Created1", "NewPost Created1");
                    svc.DeletPostWithId(3);
                    svc.CreateNewPost(2, "NewPost Created2", "NewPost Created2");

                    var result = await ctx.CompareTo(GetExpectedContext(test));

                    result.AreEqual.ShouldBe(true, result.ToString());
                }
            }
        }
コード例 #3
0
        public async Task Should_CreateTwoPostAndDeleteOne()
        {
            string test = "test31";

            using (SampleContext ctx = GetInputContext(test))
            {
                using (PostService svc = new PostService(ctx))
                {
                    svc.CreateNewPost(3, "NewPost Created1", "NewPost Created1");
                    svc.DeletPostWithId(3);
                    svc.CreateNewPost(2, "NewPost Created2", "NewPost Created2");

                    var result = await ctx.CompareTo(GetExpectedContext(test));

                    result.AreEqual.ShouldBe(true, result.ToString());
                }
            }
        }
コード例 #4
0
        public async Task Should_CreateNewPost(string test, Int64 actorId, string postsubject, string postBody)
        {
            using (SampleContext ctx = GetInputContext(test))
            {
                using (PostService svc = new PostService(ctx))
                {
                    svc.CreateNewPost(actorId, postsubject, postBody);

                    var result = await ctx.CompareTo(GetExpectedContext(test));

                    result.AreEqual.ShouldBe(true, result.ToString());
                }
            }
        }
コード例 #5
0
        public async Task Should_CreateNewPost(string test, Int64 actorId, string postsubject, string postBody)
        {
            using (SampleContext ctx = GetInputContext(test))
            {
                using (PostService svc = new PostService(ctx))
                {
                    svc.CreateNewPost(actorId, postsubject, postBody);

                    var result = await ctx.CompareTo(GetExpectedContext(test));

                    result.AreEqual.ShouldBe(true, result.ToString());
                }
            }
        }
コード例 #6
0
        public void CreateNewPost()
        {
            // Arrange
            var mockedDbContext            = new Mock <ICreatorsDbContext>();
            var mockedDbSaveChangesContext = new Mock <ICreatorsDbSaveChangesContext>();
            var mockedPostFactory          = new Mock <IPostFactory>();
            var mockedCategoryService      = new Mock <ICategoryService>();
            var mockedUserService          = new Mock <IUserService>();

            var category = new Category()
            {
                Id = Guid.NewGuid(), CategoryName = "Music"
            };
            var user = new User()
            {
                Id = Guid.NewGuid().ToString()
            };
            var post = new Post();

            mockedCategoryService.Setup(x => x.GetCategoryByName(category.CategoryName)).Returns(category);
            mockedUserService.Setup(x => x.GetUserById(user.Id)).Returns(user);
            mockedPostFactory.Setup(x => x.CreatePostInstance()).Returns(post);

            var postDbList       = new List <Post>();
            var mockedPostDbList = new Mock <IDbSet <Post> >();

            mockedPostDbList.Setup(set => set.Add(It.IsAny <Post>()))
            .Callback((Post p) => postDbList.Add(p));

            mockedDbContext.Setup(x => x.Posts).Returns(mockedPostDbList.Object);

            var postService = new PostService(
                mockedDbContext.Object,
                mockedDbSaveChangesContext.Object,
                mockedPostFactory.Object,
                mockedCategoryService.Object,
                mockedUserService.Object);

            var postTitle    = "Some title";
            var postImageUrl = "url bro";
            var postCategory = category.CategoryName;
            var postContent  = "bla bla bla content";

            // Act
            postService.CreateNewPost(postTitle, postImageUrl, postCategory, postContent, user);

            // Assert
            Assert.That(postDbList.Count(), Is.EqualTo(1));
            Assert.That(postDbList[0].Category, Is.SameAs(category));
        }
コード例 #7
0
        public void ThrowIfInvalidParametersArePassed()
        {
            // Arrange
            var mockedDbContext            = new Mock <ICreatorsDbContext>();
            var mockedDbSaveChangesContext = new Mock <ICreatorsDbSaveChangesContext>();
            var mockedPostFactory          = new Mock <IPostFactory>();
            var mockedCategoryService      = new Mock <ICategoryService>();
            var mockedUserService          = new Mock <IUserService>();

            var postService = new PostService(
                mockedDbContext.Object,
                mockedDbSaveChangesContext.Object,
                mockedPostFactory.Object,
                mockedCategoryService.Object,
                mockedUserService.Object);

            // Act & Assert
            Assert.Throws <NullReferenceException>(() =>
            {
                postService.CreateNewPost(null, null, null, null, null);
            });
        }
コード例 #8
0
        private static async Task DoWork(SampleContext inputContext, SampleContext outputContext, Stopwatch doworkWatch)
        {
            doworkWatch.Start();
            using (inputContext)
            {
                using (outputContext)
                {
                    using (PostService svc = new PostService(inputContext))
                    {
                        svc.CreateNewPost(1, "sampleSubject", "sampleBody");
                        //svc.DeletPostWithId(2);
                        //svc.CreateNewPost(1, "sampleSubject", "sampleBody");

                        var allPosts = svc.GetAllPost().ToList();

                        allPosts.Count.ShouldBe(2);

                        var result = await inputContext.CompareTo(outputContext);

                        result.AreEqual.ShouldBe(true, result.ToString());
                    }
                }
            }
            doworkWatch.Stop();
        }