示例#1
0
        public async Task CreateVirtualAccount_ThrowsExceptionNotSuccess()
        {
            var connectionMock = new Mock <IXenditHttpConnection>();

            connectionMock
            .Setup(c => c.SendRequestBodyAsync <XenditBaseRequest, XenditVACreateResponse>(
                       It.IsAny <Method>(),
                       It.IsAny <string>(),
                       It.IsAny <XenditBaseRequest>(),
                       It.IsAny <string>()))
            .ThrowsAsync(XenditTestHelpers.GetTestResponseException());

            var vaClient = new XenditVAClient(connectionMock.Object);

            var requestedVA = new XenditVACreateRequest
            {
                ExternalId           = "Test_VA_1234",
                VirtualAccountNumber = "1234"
            };

            await Assert.ThrowsAsync <XenditHttpResponseException>(() => vaClient.CreateAsync(requestedVA));

            connectionMock.Verify(c => c.SendRequestBodyAsync <XenditVACreateRequest, XenditVACreateResponse>(
                                      Method.POST,
                                      "/callback_virtual_accounts",
                                      requestedVA,
                                      requestedVA.ExternalId), Times.Once);
        }
示例#2
0
        public async Task CreateVirtualAccount_ReturnsSuccess()
        {
            var connectionMock = new Mock <IXenditHttpConnection>();

            connectionMock
            .Setup(c => c.SendRequestBodyAsync <XenditBaseRequest, XenditVACreateResponse>(
                       It.IsAny <Method>(),
                       It.IsAny <string>(),
                       It.IsAny <XenditBaseRequest>(),
                       It.IsAny <string>()))
            .ReturnsAsync(new XenditVACreateResponse());

            var vaClient = new XenditVAClient(connectionMock.Object);

            var requestedVA = new XenditVACreateRequest
            {
                ExternalId           = "Test_VA_1234",
                VirtualAccountNumber = "1234"
            };

            var va = await vaClient.CreateAsync(requestedVA);

            connectionMock.Verify(c => c.SendRequestBodyAsync <XenditVACreateRequest, XenditVACreateResponse>(
                                      Method.POST,
                                      "/callback_virtual_accounts",
                                      requestedVA,
                                      requestedVA.ExternalId), Times.Once);
        }