-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathBillPaymentClientTest.java
More file actions
79 lines (71 loc) · 2.58 KB
/
BillPaymentClientTest.java
File metadata and controls
79 lines (71 loc) · 2.58 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
package com.qiwi.billpayments.sdk.client;
import com.qiwi.billpayments.sdk.model.BillStatus;
import com.qiwi.billpayments.sdk.model.MoneyAmount;
import com.qiwi.billpayments.sdk.model.in.CustomFields;
import com.qiwi.billpayments.sdk.model.in.Customer;
import com.qiwi.billpayments.sdk.model.out.BillResponse;
import com.qiwi.billpayments.sdk.model.out.ResponseStatus;
import org.apache.http.HttpHeaders;
import org.junit.Assert;
import org.junit.Test;
import java.math.BigDecimal;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.time.ZonedDateTime;
import java.util.Currency;
import java.util.Map;
import java.util.UUID;
public class BillPaymentClientTest {
@Test
public void testPrepareHeaders() {
//given
String token = "token";
String bearerPrefix = "Bearer ";
//when
Map<String, String> headers = BillPaymentClient.prepareHeaders(token);
//then
Assert.assertEquals(
"headers should contain bearer token",
headers.get(HttpHeaders.AUTHORIZATION),
bearerPrefix + token
);
}
@Test
public void testAppendSuccessUrl() throws Exception {
//given
String successUrl = "http://success-url.ru/";
BillResponse response = new BillResponse(
UUID.randomUUID().toString(),
UUID.randomUUID().toString(),
new MoneyAmount(
BigDecimal.valueOf(100.34),
Currency.getInstance("RUB")
),
new ResponseStatus(
BillStatus.PAID,
ZonedDateTime.now()
),
"comment",
new Customer(
"test@test.ru",
"user uid on your side",
"79999999999"
),
ZonedDateTime.now(),
ZonedDateTime.now(),
"http://test.ru/",
new CustomFields("client", "version", null),
"79999999999"
);
//when
BillResponse appendedResponse = BillPaymentClient.appendSuccessUrl(response, successUrl);
String charset = StandardCharsets.UTF_8.name();
String expectedUrl = response.getPayUrl() + "?successUrl=" + URLEncoder.encode(successUrl, charset);
//then
Assert.assertEquals(
"Pay url should contain original url with appended success url as encoded param",
expectedUrl,
appendedResponse.getPayUrl()
);
}
}