示例#1
0
        public async Task List_ReturnViewResult()
        {
            // Arrange
            var traceLogService = Substitute.For <ITraceLogService>();
            var usernames       = _traceLogs.Select(t => t.PerformedBy).OrderBy(t => t).Distinct().ToList();

            traceLogService.GetTraceLogs(Arg.Any <TraceLogPagedDataRequest>()).Returns(_traceLogs);
            traceLogService.GetPerformedUsernames().Returns(usernames);

            var sut = new TraceLogsController(traceLogService);

            // Act
            var result = await sut.List() as ViewResult;

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual("List", result.ViewName);
            var model = (TraceLogSearchModel)result.Model;

            Assert.AreEqual(3, model.AvailableUsernames.Count);

            Assert.AreEqual("All", model.AvailableUsernames[0].Text);
            Assert.AreEqual("", model.AvailableUsernames[0].Value);

            Assert.AreEqual(usernames[0], model.AvailableUsernames[1].Text);
            Assert.AreEqual(usernames[0], model.AvailableUsernames[1].Value);

            Assert.AreEqual(usernames[1], model.AvailableUsernames[2].Text);
            Assert.AreEqual(usernames[1], model.AvailableUsernames[2].Value);
        }
示例#2
0
        public async Task List_PostDataSourceRequestAndTraceLogSearchModel_ReturnJsonResult()
        {
            // Arrange
            var traceLogService = Substitute.For <ITraceLogService>();

            traceLogService.GetTraceLogs(Arg.Any <TraceLogPagedDataRequest>()).Returns(_traceLogs);

            var sut = new TraceLogsController(traceLogService);

            var request = new DataSourceRequest {
                Sorts = new List <SortDescriptor>()
            };
            var model = new TraceLogSearchModel();

            // Act
            var result = await sut.List(request, model) as JsonResult;

            // Assert
            Assert.IsNotNull(result);
            var dataSourceResult = (DataSourceResult)result.Data;
            var models           = (IEnumerable <TraceLogModel>)dataSourceResult.Data;

            Assert.AreEqual(3, models.Count());
        }