public async Task ShouldGetFilteredEntries(string userId, string userName, string email, AccountActionType type, DateTime?dateFrom = null, DateTime?dateTo = null) { // Arrange Context.AccountLogEntries.AddRange(AccountLogEntryFaker.Generate(10)); Context.AccountLogEntries.Add(new AccountLogEntryDbModel { UserId = "alexpvt", UserName = "******", Email = "*****@*****.**", Type = (int)AccountActionType.SignIn, EventDate = DateTimeNow }); await Context.SaveChangesAsync(); var filter = new AccountLogsFilter { UserId = userId, UserName = userName, Email = email, Type = type, DateFrom = dateFrom, DateTo = dateTo }; // Act var entries = await _accountLogService.GetLogsAsync(filter); // Assert entries.Count().ShouldBeEqualTo(1); var entry = entries.Single(); entry.UserId.ShouldBeEqualTo("alexpvt"); entry.UserName.ShouldBeEqualTo("Alexander Pashnikov"); entry.Email.ShouldBeEqualTo("*****@*****.**"); entry.Type.ShouldBeEqualTo(AccountActionType.SignIn); entry.EventDate.ShouldBeEqualTo(DateTimeNow); }
public async Task <IActionResult> GetAccountLogs([FromQuery] AccountLogsFilter filter) { var result = await _loggingService.GetLogsAsync(filter); return(Ok(result)); }