Beispiel #1
0
        public async Task <IActionResult> GetLatestLogs(
            [FromQuery] int pageSize         = 200,
            [FromQuery] int pageNum          = 1,
            [FromQuery] LogCategory?category = null,
            [FromQuery] LogSeverity?severity = null,
            [FromQuery] string sortBy        = "Timestamp",
            [FromQuery] bool sortDescending  = true)
        {
            var pageInfo = new PageInfo
            {
                SortBy         = sortBy,
                SortDescending = sortDescending,
                PageSize       = pageSize,
                PageNum        = pageNum
            };

            var result = await _adminLogService.GetLatestLogEntries(pageInfo, category, severity);

            var dtos = new List <Dto.LogEntry>();

            foreach (var entry in result.Data)
            {
                dtos.Add(new Dto.LogEntry(entry));
            }

            return(Ok(new DataList <Dto.LogEntry>(dtos, result.PageInfo)));
        }
        public void GetLatestLogEntries()
        {
            var pageInfo = new PageInfo();
            var category = LogCategory.General;
            var severity = LogSeverity.Neutral;

            var entries  = new List <LogEntry>();
            var dataList = new DataList <LogEntry>(entries, pageInfo);

            _logData.Setup(m => m.GetLogEntries(pageInfo, category, severity, DateTime.MinValue, It.IsAny <DateTime>()))
            .Callback <PageInfo, LogCategory?, LogSeverity?, DateTime, DateTime>((pageInfo, category, serverity, timestampStart, timestampEnd) =>
            {
                Assert.True(timestampEnd > DateTime.Now.AddMinutes(-1));
            })
            .ReturnsAsync(dataList);

            var results = _adminLogService.GetLatestLogEntries(pageInfo, category, severity);

            _logData.Verify(m => m.GetLogEntries(pageInfo, category, severity, DateTime.MinValue, It.IsAny <DateTime>()),
                            Times.Once);
        }