public async Task GetUserPaymentRequestsAsync_ExpectedResult_VerifiesCall_NoOptionalParameters()
        {
            // Arrange
            var userPaymentRequest = new UserPaymentRequest()
            {
                PlatformToken = "PlatformToken",
                UserToken     = "UserToken",
                Limit         = 100,
                Offset        = 1
            };
            var expectedResult = new UserPaymentResponse();
            var expectedCall   = $"{UrlProvider.GetUserPaymentsUrlSuffix(userPaymentRequest.PlatformToken, userPaymentRequest.UserToken)}?offset={userPaymentRequest.Offset}&limit={userPaymentRequest.Limit}";

            _mockAuthorizedRequestsHandler
            .Setup(m => m.GetOrExceptionAsync <UserPaymentResponse>(expectedCall))
            .ReturnsAsync(expectedResult)
            .Verifiable();
            var sut = CreateSut();

            // Act
            var result = await sut.GetUserPaymentRequestsAsync(userPaymentRequest);

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(expectedResult, result);
            _mockAuthorizedRequestsHandler
            .Verify(m => m.GetOrExceptionAsync <UserPaymentResponse>(expectedCall), Times.Once);
        }
        public async Task GetUserPaymentRequestsAsync_ExpectedResponse_VerifiesCall()
        {
            // Arrange
            var userPaymentRequest         = new UserPaymentRequest();
            var expectedResult             = new UserPaymentResponse();
            var mockPaymentRequestsHandler = new Mock <IPaymentRequestsHandler>();

            mockPaymentRequestsHandler
            .Setup(m => m.GetUserPaymentRequestsAsync(userPaymentRequest))
            .ReturnsAsync(expectedResult)
            .Verifiable();

            var sut = new TikkieClient(Mock.Of <IPlatformRequestsHandler>(), Mock.Of <IUserRequestsHandler>(), mockPaymentRequestsHandler.Object);

            // Act
            var result = await sut.GetUserPaymentRequestsAsync(userPaymentRequest);

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(expectedResult, result);
            mockPaymentRequestsHandler
            .Verify(m => m.GetUserPaymentRequestsAsync(userPaymentRequest), Times.Once);
        }