public async Task Should_Create() { var singleLevelTypeId = 5; var singleCategoryId = 2; var templateCreate = new TestTemplateDTO { Id = 1, Title = "Sample", Levels = { new TestTemplateLevelDTO { Description = "Level desc", Filter = new TaskFilterDTO { TaskTypeIds ={ singleLevelTypeId }, CategoryIds ={ singleCategoryId } } } } }; var repositoryMock = new Mock <IRepository <TestTemplate> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); unitOfWorkMock.Setup(u => u.TestTemplates).Returns(() => repositoryMock.Object); var service = new TestTemplateService(null, unitOfWorkMock.Object, mapper); await service.CreateAsync(templateCreate); unitOfWorkMock.Verify(m => m.SaveAsync()); repositoryMock.Verify(m => m.Create(It.Is <TestTemplate>(t => t.Id == templateCreate.Id && t.Title == templateCreate.Title && t.Levels.Single().Description == templateCreate.Levels.Single().Description && t.Levels.Single().Categories.Single().CategoryId == singleCategoryId && t.Levels.Single().TaskTypes.Single().TaskTypeId == singleLevelTypeId))); repositoryMock.VerifyNoOtherCalls(); }
public async Task <IActionResult> Create([FromForm] TestTemplateDTO template) { await testTemplateService.CreateAsync(template); return(RedirectToAction(nameof(List))); }