public void Init()
        {
            _ctrl = new BlogsController(new FakeBlogRepository());

            var config = new HttpConfiguration();
            var request = new HttpRequestMessage(HttpMethod.Post, "http://localhost/be/api");
            var route = config.Routes.MapHttpRoute("DefaultApi", "api/{controller}/{id}");
            var routeData = new HttpRouteData(route, new HttpRouteValueDictionary { { "controller", "blogs" } });

            _ctrl.ControllerContext = new HttpControllerContext(config, routeData, request);
            _ctrl.Request = request;
            _ctrl.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = config;
        }
Beispiel #2
0
        public void GetShouldReturn2Blogs()
        {
            // arrange
            var _blogsController = new BlogsController();
            var expectedResults  = _blogService.GetBlogs();

            // act
            var results = _blogsController.GetBlogs();


            // assert
            Assert.AreEqual(expectedResults.Count(), results.Count());
        }
Beispiel #3
0
 public void Details_By_BlogId()
 {
     using (var context = new ApplicationDbContext(options))
     {
         var dataProtectionProvider = new EphemeralDataProtectionProvider();
         blogsController = new BlogsController(context, dataProtectionProvider, mockHttpContextAccessor.Object, mockEnvironment.Object);
         var resultTask = blogsController.Details(1);
         resultTask.Wait();
         Assert.IsNotNull(resultTask.Result);
         var model = (Blogs)((ViewResult)resultTask.Result).Model;
         Assert.AreEqual(1, model.BlogId);
     }
 }
        public void GET_BLOG()
        {
            // arrange
            var mock = new Mock <IBlog>();

            mock.Setup(b => b.Get()).Returns(_blogModel);
            var controller = new BlogsController(mock.Object);

            // act
            var result = controller.Get();

            result.Should().NotBeNull();
        }
        public void Details()
        {
            // Arrange
            var controller = new BlogsController(_blogService);

            // Act
            var result = controller.Details(1).Result as ViewResult;
            var model  = result.Model as Blog;

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual("Blog 1", model.Name);
        }
        public void Index()
        {
            // Arrange
            var controller = new BlogsController(_blogService);

            // Act
            var result = controller.Index().Result as ViewResult;
            var model  = result.Model as List <Blog>;

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(3, model.Count);
        }
Beispiel #7
0
        public async Task DetailsBlogsController()
        {
            var context    = GetInMemoryDbMetData();
            var controller = new BlogsController(context, _hostingEnvironment);

            var result = await controller.Details(Blogs[1].Id);

            var viewResult = Assert.IsType <ViewResult>(result);
            var model      = Assert.IsAssignableFrom <Blog>(viewResult.ViewData.Model);

            Assert.Equal("Summer 2018", model.Title);
            Assert.Equal("Summer is the hottest of the four temperate seasons, falling after spring and before autumn.", model.Content);
            Assert.Equal("In the summer the sun shines sometimes, but sometimes it doesn't", model.Subtitle);
            Assert.NotNull(viewResult);
        }
Beispiel #8
0
        public async Task PostEditBlogsController()
        {
            //Getting Everything To Make This Unit Test Work
            IFormFile           file = GetFormFile();
            IHostingEnvironment hostingEnvironment = GetHostingEnvironment();
            DatabaseContext     context            = GetInMemoryDbMetData();

            var controller = new BlogsController(context, hostingEnvironment);

            var result = await controller.Edit(Blogs[0].Id, Blogs[0], file);

            var viewResult = Assert.IsType <RedirectToActionResult>(result);

            Assert.Equal("Index", viewResult.ActionName);
        }
        public void Init()
        {
            _ctrl = new BlogsController(new FakeBlogRepository());

            var config    = new HttpConfiguration();
            var request   = new HttpRequestMessage(HttpMethod.Post, "http://localhost/be/api");
            var route     = config.Routes.MapHttpRoute("DefaultApi", "api/{controller}/{id}");
            var routeData = new HttpRouteData(route, new HttpRouteValueDictionary {
                { "controller", "blogs" }
            });

            _ctrl.ControllerContext = new HttpControllerContext(config, routeData, request);
            _ctrl.Request           = request;
            _ctrl.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = config;
        }
Beispiel #10
0
        public void Alphabetize_The_Results_By_Company_Name()
        {
            Context.Blogs.Add(new Blog()
            {
                CompanyName = "B"
            });
            Context.Blogs.Add(new Blog()
            {
                CompanyName = "A"
            });

            var target = new BlogsController(Context);

            var viewModel = target.Index().GetResult <IEnumerable <Blog> >();

            viewModel.First().CompanyName.ShouldBe("A");
        }
Beispiel #11
0
        public async Task IndexBlogsController()
        {
            var context    = GetInMemoryDbMetData();
            var controller = new BlogsController(context, _hostingEnvironment);

            var result = await controller.Index();

            var viewResult = Assert.IsType <ViewResult>(result);
            var model      = Assert.IsAssignableFrom <List <Blog> >(viewResult.ViewData.Model);

            //Test Blog 1
            Assert.Equal("Season", model[0].Category);
            Assert.Equal("Season", model[1].Category);

            //Test Blog 2
            Assert.Equal("Winter 2018", model[0].Title);
            Assert.Equal("Summer 2018", model[1].Title);
            Assert.Equal(2, model.Count);
            Assert.NotNull(viewResult);
        }
Beispiel #12
0
        public void GetShouldReturnAllBlogs()
        {
            // arrange
            var _blogsController = new BlogsController();
            IEnumerable <Blog> expectedResults = _blogService.GetBlogs();

            // act
            IEnumerable <Blog> results = _blogsController.GetBlogs();

            // assert
            var er = expectedResults.ToList();
            var r  = results.ToList();

            for (int i = 0; i < r.Count; i++)
            {
                Blog rid = r.Where(x => x.ID == er[i].ID).FirstOrDefault();
                Assert.AreEqual <Blog>(er[i], rid);
            }

            // CollectionAssert.AreEqual(results.ToList(), results.ToList());
        }
        public void getAllBlogs()
        {
            List <Blog> fakeBlogs = new List <Blog> {
                new Blog {
                    BlogOwner = "test1", BlogTitle = "test1"
                },
                new Blog {
                    BlogOwner = "test2", BlogTitle = " test2"
                }
            };

            _repo.Setup(x => x.getAllBlogs()).Returns(fakeBlogs);
            var controller = new BlogsController(_repo.Object);

            var result = controller.Index() as ViewResult;

            CollectionAssert.AllItemsAreInstancesOfType((ICollection)result.ViewData.Model, typeof(Blog));
            Assert.IsNotNull(result, "View result is null.");
            var op = result.ViewData.Model as List <Blog>;

            Assert.AreEqual(2, op.Count, "Got wrong number of Blogs");
        }
Beispiel #14
0
        public void Setup()
        {
            options = new DbContextOptionsBuilder <ApplicationDbContext>()
                      .UseInMemoryDatabase(databaseName: "OneStopShopDatabase")
                      .Options;

            //...Setup the mock as needed
            mockEnvironment
            .Setup(m => m.EnvironmentName)
            .Returns("Hosting:UnitTestEnvironment");

            entities = new List <Store>();

            using (var context = new ApplicationDbContext(options))
            {
                var dataProtectionProvider = new EphemeralDataProtectionProvider();
                var blogsController        = new BlogsController(context, dataProtectionProvider, mockHttpContextAccessor.Object, mockEnvironment.Object);

                if (context.Stores == null || context.Stores.CountAsync().Result == 0)
                {
                    context.Stores.Add(new Store
                    {
                        StoreId          = 1,
                        Email            = "*****@*****.**",
                        PhoneNumber      = "8585858585",
                        SellerFirstname  = "Rob",
                        SellerLasttname  = "Miller",
                        StoreName        = "UE Enterprise",
                        StoreDescription = "This is description of store"
                    });
                    context.SaveChanges();
                }
                if (context.Products == null || context.Products.CountAsync().Result == 0)
                {
                    context.Products.Add(new Product
                    {
                        ProductColor       = "#FFFFFF",
                        ProductID          = 1,
                        ProductImage       = "",
                        IsAddedToCart      = false,
                        ProductCreatedDate = DateTime.Now,
                        ProductDescription = "The aluminium case is lightweight and made from 100 per cent recycled aerospace-grade alloy."
                                             + "The Sport Band is made from a durable yet surprisingly soft high - performance fluoroelastomer"
                                             + "with an innovative pin - and - tuck closure.",
                        ProductName  = "Apple smart watch",
                        ProductPrice = 5873,
                        ProductSize  = "1",
                        StoreId      = 1,
                        store        = new Store()
                        {
                            Email            = "*****@*****.**",
                            PhoneNumber      = "8585858585",
                            SellerFirstname  = "Rob",
                            SellerLasttname  = "Miller",
                            StoreName        = "UE Enterprise",
                            StoreDescription = "This is description of store",
                            StoreId          = 1
                        }
                    });
                    context.SaveChanges();
                }
            }
        }
Beispiel #15
0
 public BlogsControllerTests()
 {
     mockService = new Mock <IBlogService>();
     mockMapper  = new Mock <IMapper>();
     controller  = new BlogsController(mockService.Object, mockMapper.Object);
 }
Beispiel #16
0
        public void Setup()
        {
            id = 1;

            blogs = new List <Blogs> {
                new Blogs {
                    Created = DateTime.Now, Description = "Blog from seed", IsOpen = true, LastEdited = DateTime.Now, LastEditor = "seed", Name = "TheSeedBlogg", Owner = "seed"
                },
                new Blogs {
                    Created = DateTime.Now, Description = "Blog from seed2", IsOpen = true, LastEdited = DateTime.Now, LastEditor = "seed", Name = "TheSeedBlogg2", Owner = "seed"
                },
                new Blogs {
                    Created = DateTime.Now, Description = "Blog from seed3", IsOpen = true, LastEdited = DateTime.Now, LastEditor = "seed", Name = "TheSeedBlogg3", Owner = "seed"
                }
            };

            posts1 = new List <Posts>
            {
                new Posts {
                    BlogsID = 1, Content = "Seeded content", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed"
                },
                new Posts {
                    BlogsID = 1, Content = "Seeded content2", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed2"
                },
                new Posts {
                    BlogsID = 1, Content = "Seeded content3", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed3"
                },
                new Posts {
                    BlogsID = 1, Content = "Seeded content4", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed4"
                },
                new Posts {
                    BlogsID = 1, Content = "Seeded content5", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed5"
                },
            };

            posts2 = new List <Posts> {
                new Posts {
                    BlogsID = 2, Content = "Seeded content", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed"
                },
                new Posts {
                    BlogsID = 2, Content = "Seeded content2", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed2"
                },
                new Posts {
                    BlogsID = 2, Content = "Seeded content3", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed3"
                },
                new Posts {
                    BlogsID = 2, Content = "Seeded content4", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed4"
                },
                new Posts {
                    BlogsID = 2, Content = "Seeded content5", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed5"
                },
            };

            posts3 = new List <Posts> {
                new Posts {
                    BlogsID = 3, Content = "Seeded content", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed"
                },
                new Posts {
                    BlogsID = 3, Content = "Seeded content2", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed2"
                },
                new Posts {
                    BlogsID = 3, Content = "Seeded content3", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed3"
                },
                new Posts {
                    BlogsID = 3, Content = "Seeded content4", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed4"
                },
                new Posts {
                    BlogsID = 3, Content = "Seeded content5", Created = DateTime.Now, CreatedBy = "seed", LastEdited = DateTime.Now, Edited = false, Header = "Header from seed5"
                }
            };

            irepository = new Mock <IRepository>();

            irepository.Setup(x => x.GetAllBlogs()).Returns(blogs);
            irepository.Setup(x => x.GetBlogName(It.IsAny <int>())).Returns(blogs[id].Name);
            irepository.Setup(x => x.GetBlogDescription(It.IsAny <int>())).Returns(blogs[id].Description);
            irepository.Setup(x => x.GetAllPosts(It.IsAny <Blogs>())).Returns(posts1);
            irepository.Setup(x => x.RemovePost(It.IsAny <Posts>()));
            irepository.Setup(x => x.UpdatePost(It.IsAny <Posts>()));
            irepository.Setup(x => x.AddPost(It.IsAny <Posts>()));

            controller = new BlogsController(irepository.Object);
        }
Beispiel #17
0
 public BlogsControllerTest()
 {
     controller = new BlogsController(new MemoryBlogRepository());
 }
        public void Initialize()
        {
            // Set up Automapper
            WebApiConfig.CreateMaps();

            // Set up repositories
            _blogRepositoryMock = new Mock <IBlogRepository>();
            _postRepositoryMock = new Mock <IPostRepository>();
            _userRepositoryMock = new Mock <IUserRepository>();

            // Set data in repositories
            _blogs = new[]
            {
                new Blog {
                    BlogID      = _blogIDApprovedNoMockPosts,
                    BlogType    = BlogTypes.WordPress,
                    CreatedDate = new DateTime(2015, 12, 2, 14, 55, 32),
                    Approved    = true,
                    AuthorEmail = "*****@*****.**",
                    AuthorName  = "Testy McTesterson",
                    Description = "Testing",
                    Link        = "http://testy.wordpress.com",
                    Title       = "Testy's Blog"
                },
                new Blog {
                    BlogID      = _blogIDApprovedMockPosts,
                    BlogType    = BlogTypes.WordPress,
                    CreatedDate = new DateTime(2015, 12, 3, 10, 55, 32),
                    Approved    = true,
                    AuthorEmail = "*****@*****.**",
                    AuthorName  = "Unit Testerson",
                    Description = "Unit Testing",
                    Link        = "http://testerson.wordpress.com",
                    Title       = "Testerson's Blog"
                },
                new Blog {
                    BlogID      = _blogIDNotApproved,
                    BlogType    = BlogTypes.WordPress,
                    CreatedDate = new DateTime(2015, 12, 1, 10, 55, 32),
                    Approved    = false,
                    AuthorEmail = "*****@*****.**",
                    AuthorName  = "KDS",
                    Description = "Great Blog",
                    Link        = "kdstestyxxxcom",
                    Title       = "KDS Blog"
                }
            };

            _posts = new[]
            {
                new Post {
                    PostID          = _postIDFirst,
                    BlogID          = _blogIDApprovedMockPosts,
                    Blog            = _blogs[_blogIDApprovedMockPostsIndexInArray],
                    Content         = "Test content",
                    Description     = "Interesting post",
                    Guid            = _postIDFirst.ToString(),
                    Link            = "http://testerson.wordpress.com/post/1",
                    PublicationDate = new DateTime(2015, 11, 2, 9, 55, 32),
                    Title           = "Interesting Title"
                },
                new Post {
                    PostID          = _postIDSecond,
                    BlogID          = _blogIDApprovedMockPosts,
                    Blog            = _blogs[_blogIDApprovedMockPostsIndexInArray],
                    Content         = "More test content",
                    Description     = "More interesting post",
                    Guid            = _postIDSecond.ToString(),
                    Link            = "http://testerson.wordpress.com/post/2",
                    PublicationDate = new DateTime(2015, 11, 3, 9, 55, 32),
                    Title           = "More Interesting Title"
                },
                new Post {
                    PostID          = _postIDThird,
                    BlogID          = _blogIDApprovedMockPosts,
                    Blog            = _blogs[_blogIDApprovedMockPostsIndexInArray],
                    Content         = "Even more test content",
                    Description     = "Even more interesting post",
                    Guid            = _postIDThird.ToString(),
                    Link            = "http://testerson.wordpress.com/post/3",
                    PublicationDate = new DateTime(2015, 11, 5, 9, 55, 32),
                    Title           = "Even More Interesting Title"
                }
            };

            // Set up users: first is authorized, second is unauthorized
            _users = new[]
            {
                new User {
                    Id            = 1,
                    Authorized    = true,
                    PasswordHash  = "XXX",
                    SecurityStamp = "YYY",
                    UserName      = "******"
                },
                new User {
                    Id            = 2,
                    Authorized    = false,
                    PasswordHash  = "XXX",
                    SecurityStamp = "YYY",
                    UserName      = "******"
                }
            };

            _blogRepositoryMock.Setup(br => br.GetAll()).Returns(_blogs.AsQueryable());
            _blogRepositoryMock.Setup(br => br.GetByID(_blogIDApprovedMockPosts)).Returns(_blogs[_blogIDApprovedMockPostsIndexInArray]);
            _blogRepositoryMock.Setup(br => br.GetByID(_blogIDApprovedNoMockPosts)).Returns(_blogs[_blogIDApprovedNoMockPostsIndexInArray]);
            _blogRepositoryMock.Setup(br => br.GetByID(_blogIDNotApproved)).Returns(_blogs[_blogIDNotApprovedIndexInArray]);

            _postRepositoryMock.Setup(pr => pr.GetAll()).Returns(_posts.AsQueryable());
            _postRepositoryMock.Setup(pr => pr.GetByID(_postIDFirst)).Returns(_posts[_postIDFirstIndexInArray]);
            _postRepositoryMock.Setup(pr => pr.GetByID(_postIDSecond)).Returns(_posts[_postIDSecondIndexInArray]);
            _postRepositoryMock.Setup(pr => pr.GetByID(_postIDThird)).Returns(_posts[_postIDThirdIndexInArray]);

            // Set up unit of work and controller
            _unitOfWorkMock          = new Mock <IUnitOfWork>();
            _blogServiceMock         = new Mock <IBlogService>();
            _wordPressBlogReaderMock = new Mock <IWordPressBlogReader>();
            _controller = new BlogsController(_blogRepositoryMock.Object, _postRepositoryMock.Object,
                                              _userRepositoryMock.Object,
                                              _unitOfWorkMock.Object, _blogServiceMock.Object,
                                              _wordPressBlogReaderMock.Object);
        }
Beispiel #19
0
 public UnitTest1()
 {
     _context    = GetContextWithData();
     _controller = new BlogsController(_context);
 }