-
Notifications
You must be signed in to change notification settings - Fork 151
Expand file tree
/
Copy pathBalanceControlTest.java
More file actions
82 lines (73 loc) · 3.07 KB
/
BalanceControlTest.java
File metadata and controls
82 lines (73 loc) · 3.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
package com.adyen;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.verify;
import com.adyen.constants.ApiConstants;
import com.adyen.enums.Environment;
import com.adyen.httpclient.HTTPClientException;
import com.adyen.model.balancecontrol.BalanceTransferRequest;
import com.adyen.model.balancecontrol.BalanceTransferResponse;
import com.adyen.service.balancecontrol.BalanceControlApi;
import com.adyen.service.exception.ApiException;
import java.io.IOException;
import java.lang.reflect.Field;
import java.time.OffsetDateTime;
import org.junit.jupiter.api.Test;
public class BalanceControlTest extends BaseTest {
@Test
public void baseUrlOnTest() throws NoSuchFieldException, IllegalAccessException {
Client client =
new Client(
new Config()
.apiKey("test")
.environment(Environment.TEST)
.liveEndpointUrlPrefix("myCompany"));
BalanceControlApi balanceControlApi = new BalanceControlApi(client);
// get field by reflection (it is protected)
Field baseURLField = BalanceControlApi.class.getDeclaredField("baseURL");
baseURLField.setAccessible(true);
String baseURL = (String) baseURLField.get(balanceControlApi);
assertEquals(
String.format(
"https://pal-test.adyen.com/pal/servlet/BalanceControl/v%s",
BalanceControlApi.API_VERSION),
baseURL);
}
@Test
public void baseUrlOnLive() throws NoSuchFieldException, IllegalAccessException {
Client client =
new Client(
new Config()
.apiKey("test")
.environment(Environment.LIVE)
.liveEndpointUrlPrefix("myCompany"));
BalanceControlApi balanceControlApi = new BalanceControlApi(client);
// get field by reflection (it is protected)
Field baseURLField = BalanceControlApi.class.getDeclaredField("baseURL");
baseURLField.setAccessible(true);
String baseURL = (String) baseURLField.get(balanceControlApi);
assertEquals(
String.format(
"https://myCompany-pal-live.adyenpayments.com/pal/servlet/BalanceControl/v%s",
BalanceControlApi.API_VERSION),
baseURL);
}
@Test
public void TestBalanceControlApi() throws IOException, ApiException, HTTPClientException {
Client client = createMockClientFromFile("mocks/smallendpoints/balance-control.json");
BalanceControlApi service = new BalanceControlApi(client);
BalanceTransferResponse response = service.balanceTransfer(new BalanceTransferRequest());
verify(client.getHttpClient())
.request(
String.format(
"https://pal-test.adyen.com/pal/servlet/BalanceControl/v%s/balanceTransfer",
BalanceControlApi.API_VERSION),
"{}",
client.getConfig(),
false,
null,
ApiConstants.HttpMethod.POST,
null);
assertEquals(response.getStatus(), BalanceTransferResponse.StatusEnum.TRANSFERRED);
assertEquals(response.getCreatedAt(), OffsetDateTime.parse("2022-01-24T14:59:11+01:00"));
}
}