public async Task ShouldCreateTheDifferenceResource() { // Arrange var leftInput = Convert.FromBase64String(Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes("LF data"))); var rightInput = Convert.FromBase64String(Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes("RT data"))); // Act var diffToCreate = new DifferenceForCreationDto { Left = leftInput, Right = rightInput }; var requestContent = new ObjectContent <DifferenceForCreationDto>(diffToCreate, new JsonMediaTypeFormatter()); var response = await this.testHostCollectionFixture.Client.PostAsync($"{BaseUrl}", requestContent); // Assert Assert.Equal(HttpStatusCode.OK, response.StatusCode); var content = response.Content.ReadAsAsync <DifferenceDto>().Result; Assert.NotNull(content); Assert.Equal(Convert.ToBase64String(leftInput), Convert.ToBase64String(content.Left)); Assert.Equal(Convert.ToBase64String(rightInput), Convert.ToBase64String(content.Right)); }
public async void CreateTheDifferenceResource() { // Arrange var leftInput = Convert.FromBase64String(Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes("LF data"))); var rightInput = Convert.FromBase64String(Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes("RT data"))); // Act var diffToCreate = new DifferenceForCreationDto { Left = leftInput, Right = rightInput }; DifferenceDto createdDiff = await this.diffService.CreateAsync(diffToCreate); // Assert Assert.NotNull(createdDiff); Difference difference; using (var differenceContext = new DifferenceContext(this.contextOptions)) { difference = differenceContext.Differences.Find(createdDiff.Id); } Assert.Equal( "LF data", System.Text.Encoding.UTF8.GetString(Convert.FromBase64String(Convert.ToBase64String(difference.Left)))); Assert.Equal( "RT data", System.Text.Encoding.UTF8.GetString(Convert.FromBase64String(Convert.ToBase64String(difference.Right)))); }
/// <inheritdoc /> public async Task <DifferenceDto> CreateAsync( DifferenceForCreationDto difference, CancellationToken cancellationToken = default(CancellationToken)) { if (difference == null) { throw new ArgumentNullException(nameof(difference)); } var differenceEntity = Mapper.Map <Difference>(difference); this.differenceUnitOfWork.DifferenceAsyncRepository.Insert(differenceEntity); if (!await this.differenceUnitOfWork.SaveChangesAsync(cancellationToken)) { throw new Exception("Creating the difference failed on save."); } return(Mapper.Map <DifferenceDto>(differenceEntity)); }