public async Task Product_can_be_created() { // arrange var request = new CreateProduct.Command() { Name = "Sample product", Description = "test desc", Unit = ProductUnitType.Items, QuantityPerUnit = 1.5m, IsActive = true }; var controller = new ProductsController(Mediator); // act var result = await controller.CreateAsync(request); // assert result.Should().NotBeNullOrWhiteSpace(); var subject = AssertRepositoryContext.Products.FirstOrDefault(); subject.Should().NotBeNull(); subject.Name.Should().Be(request.Name); subject.Unit.Should().Be(request.Unit); subject.IsActive.Should().Be(request.IsActive); subject.QuantityPerUnit.Should().Be(request.QuantityPerUnit); subject.Description.Should().Be(request.Description); subject.IsRemoved.Should().BeFalse(); }
public async Task <IHttpActionResult> PostProduct(CreateProduct.Command product) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } await mediator.SendAsync(product); return(CreatedAtRoute("DefaultApi", new { id = product.Id }, product)); }
public async Task <ActionResult> Create([FromForm] CreateProduct.Command request) { await _mediator.Send(request); return(Ok()); }
public async Task <string> CreateAsync(CreateProduct.Command command) { var response = await _mediator.Send(command); return(response); }
public async Task <ActionResult <Unit> > Create(CreateProduct.Command command) { return(await _mediator.Send(command)); }