public void Get_By_Id_Returns_NotFound_When_Given_Unknown_id() { // Arrange var posts = new List <Post>(); // no posts var repo = new InMemoryPostRepository(posts); var controller = new PostController(repo); // Act var result = controller.Get(1); // Assert Assert.IsType <NotFoundResult>(result); }
public async Task ShouldGetAllPosts() { // Arrange const int howMany = 3; var somePosts = Enumerable.Range(0, howMany).Select(_ => _post); var posts = new List <IBlogPostData>(somePosts); IPostRepository postRepository = new InMemoryPostRepository(posts); // Act var allPosts = await postRepository.GetPosts(); // Assert Check.That(allPosts).Not.IsEmpty(); Check.That(allPosts.Count).IsEqualTo(howMany); }
public void Delete_Method_Removes_A_Post() { // Arrange var testPostId = 99; var posts = CreateTestPosts(5); posts[0].Id = testPostId; // Make sure we know the Id of one of the posts var repo = new InMemoryPostRepository(posts); var controller = new PostController(repo); // Act controller.Delete(testPostId); // Assert var postFromDb = repo.InternalData.FirstOrDefault(p => p.Id == testPostId); Assert.Null(postFromDb); }
public void Get_Returns_All_Posts() { // Arrange var postCount = 20; var posts = CreateTestPosts(postCount); var repo = new InMemoryPostRepository(posts); var controller = new PostController(repo); // Act var result = controller.Get(); // Assert var okResult = Assert.IsType <OkObjectResult>(result); var actualPosts = Assert.IsType <List <Post> >(okResult.Value); Assert.Equal(postCount, actualPosts.Count); Assert.Equal(posts, actualPosts); }
public void Get_By_Id_Returns_Post_With_Given_Id() { // Arrange var testPostId = 99; var posts = CreateTestPosts(5); posts[0].Id = testPostId; // Make sure we know the Id of one of the posts var repo = new InMemoryPostRepository(posts); var controller = new PostController(repo); // Act var result = controller.Get(testPostId); // Assert var okResult = Assert.IsType <OkObjectResult>(result); var actualPost = Assert.IsType <Post>(okResult.Value); Assert.Equal(testPostId, actualPost.Id); }
protected override void Seed(VideoGameBlog.Data.EntityFramework.InitDbContext context) { var userMgr = new UserManager <BlogUser>(new UserStore <BlogUser>(context)); var roleMgr = new RoleManager <BlogRole>(new RoleStore <BlogRole>(context)); if (!roleMgr.RoleExists("Admin")) { roleMgr.Create(new BlogRole() { Name = "Admin" }); } if (!roleMgr.RoleExists("Marketing")) { roleMgr.Create(new BlogRole() { Name = "Marketing" }); } if (!roleMgr.RoleExists("Disabled")) { roleMgr.Create(new BlogRole() { Name = "Disabled" }); } // create the default user var admin = new BlogUser() { UserName = "******", Email = "*****@*****.**", PhoneNumber = "1111111111" }; var marketing = new BlogUser() { UserName = "******", Email = "*****@*****.**", PhoneNumber = "2222222222" }; var disabled = new BlogUser() { UserName = "******", Email = "*****@*****.**", PhoneNumber = "3333333333" }; // create the user with the manager class if (userMgr.FindByName(admin.UserName) == null) { userMgr.Create(admin, "corndog123"); } if (userMgr.FindByName(marketing.UserName) == null) { userMgr.Create(marketing, "corndog123"); } if (userMgr.FindByName(disabled.UserName) == null) { userMgr.Create(disabled, "corndog123"); } // add the user to the admin role userMgr.AddToRole(admin.Id, "Admin"); userMgr.AddToRole(marketing.Id, "Marketing"); userMgr.AddToRole(disabled.Id, "Disabled"); InMemoryCategoryRepository catRepo = new InMemoryCategoryRepository(); foreach (var c in catRepo.GetAll()) { context.Categories.AddOrUpdate(c); context.SaveChanges(); } InMemoryTagRepository tagRepo = new InMemoryTagRepository(); foreach (var t in tagRepo.GetAll()) { context.Tags.AddOrUpdate(t); context.SaveChanges(); } InMemoryStaticPageRepository statRepo = new InMemoryStaticPageRepository(); foreach (var s in statRepo.GetAll()) { context.StaticPages.AddOrUpdate(s); context.SaveChanges(); } InMemoryPostRepository postRepo = new InMemoryPostRepository(); foreach (var p in postRepo.GetAll()) { context.Posts.AddOrUpdate(p); context.SaveChanges(); } }
public PostController(InMemoryPostRepository repo) { this.repo = repo; }
public void CanGetPostById() { var repo = new InMemoryPostRepository(); Assert.IsNotNull(repo.Get(2)); }