public async Task Index() { var result = await _controller.Index(_subjectId, _subjectName); Assert.IsType <ViewResult>(result); var viewResult = result as ViewResult; Assert.Equal("Index", viewResult.ViewName); Assert.IsType <RecordsViewModel>(viewResult.Model); var model = viewResult.Model as RecordsViewModel; Assert.Equal(3, model.RecordTypes.Count); Assert.Equal(_subjectName, model.SubjectName); Assert.Single(model.Days); // Даже если записей нет, один день (текущий) всегда есть. Assert.Empty(model.Records); Assert.True(_controller.ModelState.IsValid); }
public void Test_ListDynamicConfigRecords() { var recordList = new List <Model.Record>() { new Model.Record() { Id = "1", ApplicationName = "SERVICE-A", IsActive = true, Name = "SiteName", Value = "voidu.com", Type = "String" }, new Model.Record() { Id = "2", ApplicationName = "SERVICE-B", IsActive = true, Name = "IsBasketEnabled", Value = "1", Type = "Boolean" } }; // Arrange var mockLogger = new Mock <ILogger <BaseController <Model.Record> > >(); var mockRepo = new Mock <RecordRepository>("mongodb://localhost:27017/test?retryWrites=true&w=majority", "configuration", "records"); var cs = mockRepo.Setup(repo => repo.GetList()) .Returns(recordList); var controller = new RecordController(mockRepo.Object, mockLogger.Object); var result = controller.Index(); Assert.IsType <Microsoft.AspNetCore.Mvc.ViewResult>(result); var viewRes = result as Microsoft.AspNetCore.Mvc.ViewResult; Assert.NotNull(viewRes.Model); Assert.Equal(2, ((List <Model.Record>)viewRes.Model).Count); }