public async void Get_SuccessStatus200_Test() { // 1: Creating testing objects Release firstRelease = new Release() { Id = "5dcaad2526235a471cfcccad", Date = "05/05/2019", PaymentMethod = PaymentMethod.Credito, EstablishmentName = "Test 1", Amount = 55.55m, CreatedAt = DateTime.Now, UpdatedAt = DateTime.Now }; // 2: Adding to database await releasesService.CreateItem(firstRelease); var query = await releasesController.Get(); var result = (List <Release>)query.Result.GetType().GetProperty("Value").GetValue(query.Result); // 3: Remove all services from database await releasesService.RemoveAll(); // 4: Check if result is a valid Release Assert.Equal("5dcaad2526235a471cfcccad", result[0].Id); }
private async void AddNewRelease(ReleaseCreatedEvent release) { var newRelease = new Release() { Id = release.Id, Date = release.Date, PaymentMethod = (PaymentMethod)Enum.Parse(typeof(PaymentMethod), release.PaymentMethod), EstablishmentName = release.EstablishmentName, Amount = release.Amount, CreatedAt = release.CreatedAt, UpdatedAt = release.UpdatedAt }; await releaseService.CreateItem(newRelease); }
public async Task <ActionResult <Release> > Post([FromBody] ReleaseRequest body) { Release resultRelease; try { logger.LogInformation("Trying to get associated establishment"); var establishment = await establishmentService.GetByName(body.EstablishmentName); if (establishment == null) { string errorMessage = responseMessages.CantFoundGivenName.Replace("$", "estabelecimento"); logger.LogInformation("Error: " + errorMessage); return(httpResponseHelper.ErrorResponse(errorMessage, 404)); } logger.LogInformation("Inserting release into database"); var newRelease = new Release() { Date = body.Date, PaymentMethod = body.PaymentMethod, Amount = body.Amount, EstablishmentName = establishment.Name, CreatedAt = DateTime.Now }; resultRelease = await releasesService.CreateItem(newRelease); //Send to RabbitMQ to event handler observer pattern Emitter.ReleaseCreated(resultRelease, rabbitConnector.ConnectionString); } catch (Exception ex) { logger.LogInformation($"Message: {ex.Message}"); logger.LogTrace($"Stack Trace: {ex.StackTrace}"); throw; } logger.LogInformation("Action POST for /api/releases returns 201"); return(Created("", resultRelease)); }