Skip to content

Commit 4698263

Browse files
chore(internal): add async service tests (#458)
chore(internal): improve sync service tests docs: readme parameter tweaks
1 parent d9088f0 commit 4698263

File tree

53 files changed

+1834
-279
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+1834
-279
lines changed

README.md

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,6 @@ FinchClient client = FinchOkHttpClient.builder()
9595
// Configures using the `FINCH_CLIENT_ID`, `FINCH_CLIENT_SECRET` and `FINCH_WEBHOOK_SECRET` environment variables
9696
.fromEnv()
9797
.accessToken("My Access Token")
98-
.accessToken("My Access Token")
9998
.build();
10099
```
101100

@@ -290,8 +289,8 @@ import com.tryfinch.api.client.okhttp.FinchOkHttpClient;
290289

291290
FinchClient client = FinchOkHttpClient.builder()
292291
.fromEnv()
293-
.accessToken("My Access Token")
294292
.maxRetries(4)
293+
.accessToken("My Access Token")
295294
.build();
296295
```
297296

@@ -317,8 +316,8 @@ import java.time.Duration;
317316

318317
FinchClient client = FinchOkHttpClient.builder()
319318
.fromEnv()
320-
.accessToken("My Access Token")
321319
.timeout(Duration.ofSeconds(30))
320+
.accessToken("My Access Token")
322321
.build();
323322
```
324323

@@ -334,12 +333,12 @@ import java.net.Proxy;
334333

335334
FinchClient client = FinchOkHttpClient.builder()
336335
.fromEnv()
337-
.accessToken("My Access Token")
338336
.proxy(new Proxy(
339337
Proxy.Type.HTTP, new InetSocketAddress(
340338
"https://example.com", 8080
341339
)
342340
))
341+
.accessToken("My Access Token")
343342
.build();
344343
```
345344

@@ -457,8 +456,8 @@ import com.tryfinch.api.client.okhttp.FinchOkHttpClient;
457456

458457
FinchClient client = FinchOkHttpClient.builder()
459458
.fromEnv()
460-
.accessToken("My Access Token")
461459
.responseValidation(true)
460+
.accessToken("My Access Token")
462461
.build();
463462
```
464463

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
// File generated from our OpenAPI spec by Stainless.
2+
3+
package com.tryfinch.api.services.async
4+
5+
import com.tryfinch.api.TestServerExtension
6+
import com.tryfinch.api.client.okhttp.FinchOkHttpClientAsync
7+
import com.tryfinch.api.models.AccessTokenCreateParams
8+
import org.junit.jupiter.api.Test
9+
import org.junit.jupiter.api.extension.ExtendWith
10+
11+
@ExtendWith(TestServerExtension::class)
12+
class AccessTokenServiceAsyncTest {
13+
14+
@Test
15+
fun create() {
16+
val client =
17+
FinchOkHttpClientAsync.builder()
18+
.baseUrl(TestServerExtension.BASE_URL)
19+
.accessToken("My Access Token")
20+
.build()
21+
val accessTokenServiceAsync = client.accessTokens()
22+
23+
val createAccessTokenResponseFuture =
24+
accessTokenServiceAsync.create(
25+
AccessTokenCreateParams.builder()
26+
.code("<your_authorization_code>")
27+
.clientId("6d28c315-5eaa-4071-8ea5-f030eb45edbc")
28+
.clientSecret("<your_client_secret>")
29+
.redirectUri("https://example.com")
30+
.build()
31+
)
32+
33+
val createAccessTokenResponse = createAccessTokenResponseFuture.get()
34+
createAccessTokenResponse.validate()
35+
}
36+
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
// File generated from our OpenAPI spec by Stainless.
2+
3+
package com.tryfinch.api.services.async
4+
5+
import com.tryfinch.api.TestServerExtension
6+
import com.tryfinch.api.client.okhttp.FinchOkHttpClientAsync
7+
import org.junit.jupiter.api.Test
8+
import org.junit.jupiter.api.extension.ExtendWith
9+
10+
@ExtendWith(TestServerExtension::class)
11+
class AccountServiceAsyncTest {
12+
13+
@Test
14+
fun disconnect() {
15+
val client =
16+
FinchOkHttpClientAsync.builder()
17+
.baseUrl(TestServerExtension.BASE_URL)
18+
.accessToken("My Access Token")
19+
.build()
20+
val accountServiceAsync = client.account()
21+
22+
val disconnectResponseFuture = accountServiceAsync.disconnect()
23+
24+
val disconnectResponse = disconnectResponseFuture.get()
25+
disconnectResponse.validate()
26+
}
27+
28+
@Test
29+
fun introspect() {
30+
val client =
31+
FinchOkHttpClientAsync.builder()
32+
.baseUrl(TestServerExtension.BASE_URL)
33+
.accessToken("My Access Token")
34+
.build()
35+
val accountServiceAsync = client.account()
36+
37+
val introspectionFuture = accountServiceAsync.introspect()
38+
39+
val introspection = introspectionFuture.get()
40+
introspection.validate()
41+
}
42+
}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
// File generated from our OpenAPI spec by Stainless.
2+
3+
package com.tryfinch.api.services.async
4+
5+
import com.tryfinch.api.TestServerExtension
6+
import com.tryfinch.api.client.okhttp.FinchOkHttpClientAsync
7+
import org.junit.jupiter.api.Test
8+
import org.junit.jupiter.api.extension.ExtendWith
9+
10+
@ExtendWith(TestServerExtension::class)
11+
class ProviderServiceAsyncTest {
12+
13+
@Test
14+
fun list() {
15+
val client =
16+
FinchOkHttpClientAsync.builder()
17+
.baseUrl(TestServerExtension.BASE_URL)
18+
.accessToken("My Access Token")
19+
.build()
20+
val providerServiceAsync = client.providers()
21+
22+
val pageFuture = providerServiceAsync.list()
23+
24+
val page = pageFuture.get()
25+
page.response().validate()
26+
}
27+
}
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
// File generated from our OpenAPI spec by Stainless.
2+
3+
package com.tryfinch.api.services.async
4+
5+
import com.tryfinch.api.TestServerExtension
6+
import com.tryfinch.api.client.okhttp.FinchOkHttpClientAsync
7+
import com.tryfinch.api.core.JsonValue
8+
import com.tryfinch.api.models.RequestForwardingForwardParams
9+
import org.junit.jupiter.api.Test
10+
import org.junit.jupiter.api.extension.ExtendWith
11+
12+
@ExtendWith(TestServerExtension::class)
13+
class RequestForwardingServiceAsyncTest {
14+
15+
@Test
16+
fun forward() {
17+
val client =
18+
FinchOkHttpClientAsync.builder()
19+
.baseUrl(TestServerExtension.BASE_URL)
20+
.accessToken("My Access Token")
21+
.build()
22+
val requestForwardingServiceAsync = client.requestForwarding()
23+
24+
val responseFuture =
25+
requestForwardingServiceAsync.forward(
26+
RequestForwardingForwardParams.builder()
27+
.method("POST")
28+
.route("/people/search")
29+
.data(null)
30+
.headers(JsonValue.from(mapOf("content-type" to "application/json")))
31+
.params(JsonValue.from(mapOf("showInactive" to true, "humanReadable" to true)))
32+
.build()
33+
)
34+
35+
val response = responseFuture.get()
36+
response.validate()
37+
}
38+
}
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
// File generated from our OpenAPI spec by Stainless.
2+
3+
package com.tryfinch.api.services.async.connect
4+
5+
import com.tryfinch.api.TestServerExtension
6+
import com.tryfinch.api.client.okhttp.FinchOkHttpClientAsync
7+
import com.tryfinch.api.models.ConnectSessionNewParams
8+
import com.tryfinch.api.models.ConnectSessionReauthenticateParams
9+
import org.junit.jupiter.api.Test
10+
import org.junit.jupiter.api.extension.ExtendWith
11+
12+
@ExtendWith(TestServerExtension::class)
13+
class SessionServiceAsyncTest {
14+
15+
@Test
16+
fun new_() {
17+
val client =
18+
FinchOkHttpClientAsync.builder()
19+
.baseUrl(TestServerExtension.BASE_URL)
20+
.accessToken("My Access Token")
21+
.build()
22+
val sessionServiceAsync = client.connect().sessions()
23+
24+
val responseFuture =
25+
sessionServiceAsync.new_(
26+
ConnectSessionNewParams.builder()
27+
.customerId("x")
28+
.customerName("x")
29+
.addProduct(ConnectSessionNewParams.ConnectProducts.COMPANY)
30+
.customerEmail("dev@stainlessapi.com")
31+
.integration(
32+
ConnectSessionNewParams.Integration.builder()
33+
.authMethod(ConnectSessionNewParams.Integration.AuthMethod.ASSISTED)
34+
.provider("provider")
35+
.build()
36+
)
37+
.manual(true)
38+
.minutesToExpire(1.0)
39+
.redirectUri("redirect_uri")
40+
.sandbox(ConnectSessionNewParams.Sandbox.FINCH)
41+
.build()
42+
)
43+
44+
val response = responseFuture.get()
45+
response.validate()
46+
}
47+
48+
@Test
49+
fun reauthenticate() {
50+
val client =
51+
FinchOkHttpClientAsync.builder()
52+
.baseUrl(TestServerExtension.BASE_URL)
53+
.accessToken("My Access Token")
54+
.build()
55+
val sessionServiceAsync = client.connect().sessions()
56+
57+
val responseFuture =
58+
sessionServiceAsync.reauthenticate(
59+
ConnectSessionReauthenticateParams.builder()
60+
.connectionId("connection_id")
61+
.minutesToExpire(0L)
62+
.addProduct(ConnectSessionReauthenticateParams.ConnectProducts.COMPANY)
63+
.redirectUri("https://example.com")
64+
.build()
65+
)
66+
67+
val response = responseFuture.get()
68+
response.validate()
69+
}
70+
}
Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
// File generated from our OpenAPI spec by Stainless.
2+
3+
package com.tryfinch.api.services.async.hris
4+
5+
import com.tryfinch.api.TestServerExtension
6+
import com.tryfinch.api.client.okhttp.FinchOkHttpClientAsync
7+
import com.tryfinch.api.models.BenefitFrequency
8+
import com.tryfinch.api.models.BenefitType
9+
import com.tryfinch.api.models.HrisBenefitCreateParams
10+
import com.tryfinch.api.models.HrisBenefitRetrieveParams
11+
import com.tryfinch.api.models.HrisBenefitUpdateParams
12+
import org.junit.jupiter.api.Test
13+
import org.junit.jupiter.api.extension.ExtendWith
14+
15+
@ExtendWith(TestServerExtension::class)
16+
class BenefitServiceAsyncTest {
17+
18+
@Test
19+
fun create() {
20+
val client =
21+
FinchOkHttpClientAsync.builder()
22+
.baseUrl(TestServerExtension.BASE_URL)
23+
.accessToken("My Access Token")
24+
.build()
25+
val benefitServiceAsync = client.hris().benefits()
26+
27+
val createCompanyBenefitsResponseFuture =
28+
benefitServiceAsync.create(
29+
HrisBenefitCreateParams.builder()
30+
.description("description")
31+
.frequency(BenefitFrequency.ONE_TIME)
32+
.type(BenefitType._401K)
33+
.build()
34+
)
35+
36+
val createCompanyBenefitsResponse = createCompanyBenefitsResponseFuture.get()
37+
createCompanyBenefitsResponse.validate()
38+
}
39+
40+
@Test
41+
fun retrieve() {
42+
val client =
43+
FinchOkHttpClientAsync.builder()
44+
.baseUrl(TestServerExtension.BASE_URL)
45+
.accessToken("My Access Token")
46+
.build()
47+
val benefitServiceAsync = client.hris().benefits()
48+
49+
val companyBenefitFuture =
50+
benefitServiceAsync.retrieve(
51+
HrisBenefitRetrieveParams.builder().benefitId("benefit_id").build()
52+
)
53+
54+
val companyBenefit = companyBenefitFuture.get()
55+
companyBenefit.validate()
56+
}
57+
58+
@Test
59+
fun update() {
60+
val client =
61+
FinchOkHttpClientAsync.builder()
62+
.baseUrl(TestServerExtension.BASE_URL)
63+
.accessToken("My Access Token")
64+
.build()
65+
val benefitServiceAsync = client.hris().benefits()
66+
67+
val updateCompanyBenefitResponseFuture =
68+
benefitServiceAsync.update(
69+
HrisBenefitUpdateParams.builder()
70+
.benefitId("benefit_id")
71+
.description("description")
72+
.build()
73+
)
74+
75+
val updateCompanyBenefitResponse = updateCompanyBenefitResponseFuture.get()
76+
updateCompanyBenefitResponse.validate()
77+
}
78+
79+
@Test
80+
fun list() {
81+
val client =
82+
FinchOkHttpClientAsync.builder()
83+
.baseUrl(TestServerExtension.BASE_URL)
84+
.accessToken("My Access Token")
85+
.build()
86+
val benefitServiceAsync = client.hris().benefits()
87+
88+
val pageFuture = benefitServiceAsync.list()
89+
90+
val page = pageFuture.get()
91+
page.response().validate()
92+
}
93+
94+
@Test
95+
fun listSupportedBenefits() {
96+
val client =
97+
FinchOkHttpClientAsync.builder()
98+
.baseUrl(TestServerExtension.BASE_URL)
99+
.accessToken("My Access Token")
100+
.build()
101+
val benefitServiceAsync = client.hris().benefits()
102+
103+
val pageFuture = benefitServiceAsync.listSupportedBenefits()
104+
105+
val page = pageFuture.get()
106+
page.response().validate()
107+
}
108+
}

0 commit comments

Comments
 (0)