public async Task<StripeResponse<Coupon>> UpdateCoupon(CouponUpdateArguments arguments,
     CancellationToken cancellationToken = default(CancellationToken))
 {
     var request = new StripeRequest<CouponUpdateArguments, Coupon>
     {
         UrlPath = PathHelper.GetPath(Paths.Coupons, arguments.CouponId),
         Model = arguments
     };
     return await _client.Post(request, cancellationToken);
 }
        public async Task UpdateCouponTest()
        {
            // Arrange
            var args = new CouponUpdateArguments
            {
                CouponId = "coupon-id"
            };
            _stripe.Post(
                Arg.Is<StripeRequest<CouponUpdateArguments, Coupon>>(
                    a => a.UrlPath == "coupons/" + args.CouponId && a.Model == args), _cancellationToken)
                .Returns(Task.FromResult(new StripeResponse<Coupon>()));

            // Act
            var response = await _client.UpdateCoupon(args, _cancellationToken);

            // Assert
            response.Should().NotBeNull();
        }
 public void Init()
 {
     _args = GenFu.GenFu.New<CouponUpdateArguments>();
 }