public async Task AddToBasket_ShouldReturnSuccessfully() { var requestModel = new AddToBasketRequestModel() { ProductId = 1, Quantity = 1, CityId = 1 }; var response = await _client.PostAsJsonAsync("basket/addtobasket", requestModel, JsonSerializerHelper.DefaultSerialisationOptions); var responseModel = await response.Content.ReadFromJsonAsync <ApiResponseModel <bool, AddToBasketReturnTypes> >(); Assert.True(responseModel.IsSuccess); Assert.Equal(AddToBasketReturnTypes.Success, responseModel.ResponseCode); }
public async Task <ApiResponseModel <bool, AddToBasketReturnTypes> > AddToBasket([FromBody] AddToBasketRequestModel requestModel) { // Ürünün Basket'e eklenmesi bu metot ile gerçekleştirilmektedir // Burada girilen Şehir-Adet-Ürün bilgilerine göre Stock Şehir'de var mı, Min-Max Order Quantity'e uyuyor mu ve mevcut Stock var mı diye kontrol ederek // sepete başarı ile ekler ya da warning döner // Stock başarılı dönüş verirse Basket'e ekleme ve üründe Stock indirme işlemleri gerçekleştirilir // Kullanıcı için aktif bir Basket yok ise, bu işlemler sırasında yeni Basket oluşturulur var requestDto = _mapper.Map <AddToBasketRequestDto>(requestModel); var data = await _basketService.AddToBasket(CurrentUserId, requestDto); return(new ApiResponseModel <bool, AddToBasketReturnTypes>() { IsSuccess = data.IsSuccess, ResponseCode = data.ResponseCode, ResponseMessage = data.ResponseMessage }); }