public async Task UpdateApiResourceAsync() { IApiResourceRepository apiResourceRepository = new ApiResourceDapperRepository(_configuration); IClientRepository clientRepository = new ClientDapperRepository(_configuration); var localizerApiResourceMock = new Mock <IApiResourceServiceResources>(); var localizerApiResource = localizerApiResourceMock.Object; var localizerClientResourceMock = new Mock <IClientServiceResources>(); var localizerClientResource = localizerClientResourceMock.Object; IClientService clientService = new ClientService(clientRepository, localizerClientResource); IApiResourceService apiResourceService = new ApiResourceService(apiResourceRepository, localizerApiResource, clientService); //Generate random new api resource var apiResourceDto = ApiResourceDtoMock.GenerateRandomApiResource(0); var apiResourceDtoId = await apiResourceService.AddApiResourceAsync(apiResourceDto); //Get new api resource var newApiResourceDto = await apiResourceService.GetApiResourceAsync(apiResourceDtoId); //Assert new api resource apiResourceDto.ShouldBeEquivalentTo(newApiResourceDto, options => options.Excluding(o => o.Id)); //Generete new api resuorce with added item id var updatedApiResource = ApiResourceDtoMock.GenerateRandomApiResource(newApiResourceDto.Id); //Update api resource await apiResourceService.UpdateApiResourceAsync(updatedApiResource); var updatedApiResourceDto = await apiResourceService.GetApiResourceAsync(newApiResourceDto.Id); //Assert updated api resuorce updatedApiResource.ShouldBeEquivalentTo(updatedApiResourceDto, options => options.Excluding(o => o.Id)); }