aboutsummaryrefslogtreecommitdiff
path: root/client_test.go
diff options
context:
space:
mode:
authorShulhan <ms@kilabit.info>2022-11-07 14:02:03 +0700
committerShulhan <ms@kilabit.info>2022-11-07 14:13:41 +0700
commitb633c4bb046138db8b5d7f47f1cdf5d97e4de818 (patch)
tree7a8c922c713b9b00b8909220acc7f54c28906b33 /client_test.go
parenteeacdd3063b6fc718fe513517808cb9fde72217b (diff)
downloadduitku-b633c4bb046138db8b5d7f47f1cdf5d97e4de818.tar.xz
all: implement client API for Clearing Transfer
The ClearingTransfer method do the clearing transfer using request and response from Clearing Inquiry.
Diffstat (limited to 'client_test.go')
-rw-r--r--client_test.go39
1 files changed, 39 insertions, 0 deletions
diff --git a/client_test.go b/client_test.go
index bcb5c3d..c896c60 100644
--- a/client_test.go
+++ b/client_test.go
@@ -77,6 +77,45 @@ func TestClient_ClearingInquiry_sandbox(t *testing.T) {
test.Assert(t, `AccountName`, `Test Account`, inquiryRes.AccountName)
}
+func TestClient_ClearingTransfer_sandbox(t *testing.T) {
+ t.Skip(`This test require external call to server`)
+
+ var (
+ inquiryReq ClearingInquiry
+ inquiryRes ClearingInquiryResponse
+
+ err error
+ tdata *test.Data
+ transferRes *ClearingTransferResponse
+ )
+
+ tdata, err = test.LoadData(`testdata/disbursement/clearing_transfer_test.txt`)
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ err = json.Unmarshal(tdata.Input[`inquiry_request.json`], &inquiryReq)
+ if err != nil {
+ t.Fatal(err)
+ }
+ err = json.Unmarshal(tdata.Input[`inquiry_response.json`], &inquiryRes)
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ transferRes, err = testClient.ClearingTransfer(inquiryReq, inquiryRes)
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ // We cannot compare the response, because for each call to server
+ // it will return different DisburseID.
+
+ t.Logf(`transferRes: %+v`, transferRes)
+
+ test.Assert(t, `AccountName`, `Test Account`, transferRes.AccountName)
+}
+
func TestClient_RtolInquiry_sandbox(t *testing.T) {
t.Skip(`This test require external call to server`)