public void CreateAsync_WhenArgumentNull_ThrowsArgumentNullException() { // Arrange ServiceModel.Audit smAudit = null; IAuditService sut = GetAuditServiceHelper(); // Act Func <Task> func = () => sut.CreateAsync(smAudit); // Assert func.Should().Throw <ArgumentNullException>(); }
public async Task CreateAsync_ShouldCreateAudit() { // Arrrange _auditRepositoryMock.Setup(m => m.AddAsync(_dmAudit)).Returns(Task.CompletedTask); _unitOfWorkMock.Setup(m => m.AuditRepository).Returns(_auditRepositoryMock.Object); _unitOfWorkMock.Setup(m => m.CommitAsync()).Returns(Task.CompletedTask); var smAudit = new ServiceModel.Audit() { Action = 5, Message = "Test", Severity = 1, Ukprn = 12345 }; IAuditService sut = GetAuditServiceHelper(); // Act await sut.CreateAsync(smAudit); //Assert _auditRepositoryMock.Verify(); _auditRepositoryMock.Verify(x => x.AddAsync(_dmAudit), Times.Once); _unitOfWorkMock.Verify(x => x.CommitAsync(), Times.Once); Mock.VerifyAll(_mockMapper); }
/// <summary> /// 执行任务完成时记录 /// </summary> /// <param name="context"></param> public override void OnActionExecuted(ActionExecutedContext context) { if (!auditSwitch) { if (context.Result is ObjectResult) { var resultObj = (context.Result as ObjectResult); audit.Result = JsonConvert.SerializeObject(resultObj.Value); } audit.StatusCode = context.HttpContext.Response.StatusCode; if (context.Exception != null) { audit.Exception = context.Exception.StackTrace; } stopwatch.Stop(); audit.Duration = stopwatch.ElapsedMilliseconds; _auditService = context.HttpContext.RequestServices.GetRequiredService <IAuditService>(); _auditService.CreateAsync(audit); } base.OnActionExecuted(context); }
public async Task <IActionResult> CreateAsync(ServiceModels.Audit request) { await _auditService.CreateAsync(request); return(StatusCode(StatusCodes.Status201Created)); }