public async Task Create_WithValidCourse_ReturnsProperView() { //Arrange var thread = new Thread() { Name = "Random name", Description = "Random description" }; var model = new ThreadCreationBindingModel() { Name = thread.Name, Description = thread.Description }; var mockRepository = new Mock <IAdminThreadsService>(); mockRepository .Setup(repo => repo.AddThreadAsync(model)) .ReturnsAsync(thread); var controller = new ThreadsController(mockRepository.Object); //Act var result = await controller.Create(model); //Assert Assert.IsInstanceOfType(result, typeof(RedirectToActionResult)); }
public PostLoggerTest(ITestOutputHelper output) { this.output = output; ActionLoggerDummy dummy = new ActionLoggerDummy(output); controller = new ThreadsController(dummy, dummy); }
public void GetByIdShouldReturnThreadWithCirrectId() { AutoMapperConfig.RegisterMappings(Assembly.Load("ForumSystem.Api")); var controller = new ThreadsController(this.threadService); var thread = controller.GetById(1); var okResult = thread as OkNegotiatedContentResult<ThreadResponseModel>; Assert.IsNotNull(thread); Assert.AreEqual(1, okResult.Content.Id); }
public void GetByCategoryIdShouldReturnThreadsWithCategory() { AutoMapperConfig.RegisterMappings(Assembly.Load("ForumSystem.Api")); var controller = new ThreadsController(this.threadService); var allThreads = controller.GetByCategory(2); var okResult = allThreads as OkNegotiatedContentResult<List<ThreadResponseModel>>; Assert.IsNotNull(allThreads); Assert.AreEqual(2, okResult.Content.Count); }
public void PostShouldReturnCorrectThread() { AutoMapperConfig.RegisterMappings(Assembly.Load("ForumSystem.Api")); var controller = new ThreadsController(this.threadService); var okResponse = controller.Post(new ThreadRequestModel { Title = "Title", Content = "Content" }); var okResult = okResponse as OkNegotiatedContentResult<ThreadResponseModel>; Assert.IsNotNull(okResponse); Assert.AreEqual(1, okResult.Content.Id); Assert.AreEqual("Some Content", okResult.Content.Content); Assert.AreEqual("Test Title", okResult.Content.Title); }
public void Create_WithValidCourse_ShouldCallService() { //Arrange var serviceCalled = false; var model = new ThreadCreationBindingModel() { Name = "Random name", Description = "Random description" }; var mockRepository = new Mock <IAdminThreadsService>(); mockRepository .Setup(repo => repo.AddThreadAsync(model)) .Callback(() => serviceCalled = true); var controller = new ThreadsController(mockRepository.Object); //Act var result = controller.Create(model); //Assert Assert.IsTrue(serviceCalled); }
public void PostShouldValidateModelState() { AutoMapperConfig.RegisterMappings(Assembly.Load("ForumSystem.Api")); var controller = new ThreadsController(this.threadService); controller.Configuration = new HttpConfiguration(); var model = new ThreadRequestModel { Content = "Content" }; controller.Validate(model); var result = controller.Post(model); Assert.IsFalse(controller.ModelState.IsValid); }