public async ValueTask <ActionResult> Patch([FromRoute] string id, [FromBody] ChangeOrderItemReq req) { var cmd = new ChangeItemMsg(id, this.TransformToOrderItemVM(req.Items)); await this.mediator.Send(cmd); return(this.Ok()); }
public async Task ChangeItem() { var msg = new ChangeItemMsg(this.id.ToString(), new[] { new OrderItemRst($"prd-{DateTimeOffset.Now:yyyyMMdd}-3", 11, 11) }); var cmd = new CreateOrder(this.id, "0", OrderStatus.Initial, new[] { this.item }); var result = Order.Create(cmd); var expectedCmd = new CreateOrder(this.id, "0", OrderStatus.Initial, new[] { new OrderItem($"prd-{DateTimeOffset.Now:yyyyMMdd}-3", 11, 11), }); var expect = Order.Create(expectedCmd); var repository = NSubstitute.Substitute.For <IOrderRepository>(); repository.GetBy(Arg.Any <OrderId>()).Returns(result); var svc = new ChangeItemSvc(this.idTranslator, this.itemsTranslator, repository); await svc.Handle(msg, new CancellationToken()); result.OrderItems.First().Should().Be(expect.OrderItems.First()); }