Skip to content

Commit ffffd00

Browse files
add some tests (#1976)
1 parent 7c4acfc commit ffffd00

File tree

3 files changed

+62
-4
lines changed

3 files changed

+62
-4
lines changed

.vscode/settings.json

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,9 @@
1919
"java.configuration.updateBuildConfiguration": "automatic",
2020
// LSP was ooming and it recommended this change
2121
// (jar) added -Xss8m so lombok would run without stack overflowing
22-
"java.jdt.ls.vmargs": "-XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx2G -Xms100m -Xlog:disable -Xss8m",
22+
// (xavdid) added -Xmx8G so LSP would be happy
23+
"java.jdt.ls.vmargs": "-XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx8G -Xms100m -Xlog:disable -Xss8m",
2324
"java.test.config": {
24-
"vmargs": [ "-Dstripe.disallowGlobalResponseGetterFallback=true"]
25-
},
25+
"vmargs": ["-Dstripe.disallowGlobalResponseGetterFallback=true"]
26+
}
2627
}

src/test/java/com/stripe/functional/EventTest.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,13 @@ public void testGetDataObjectWithSameApiVersion() throws StripeException {
6868
@Test
6969
public void testGetDataObjectWithNewApiVersionInSameReleaseTrain() throws StripeException {
7070
String expectedReleaseTrain = Stripe.API_VERSION.split("\\.")[1];
71+
72+
// this test only makes sense on GA versions- the exact version for preview versions doesn't
73+
// work this way and we can't mock private methods from this test class.
74+
if (expectedReleaseTrain.equals("preview")) {
75+
return;
76+
}
77+
7178
final Event event = Event.retrieve(EVENT_ID);
7279
// Suppose event has a different API version within the same release train as the
7380
// library's pinned version

src/test/java/com/stripe/model/EventDataObjectDeserializerTest.java

Lines changed: 51 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,14 +200,30 @@ public void testDeserializeSetsResponseGetter() throws Exception {
200200
verifyDeserializedStripeObject(deserializer.getObject().get());
201201
}
202202

203+
@Test
204+
public void testGetDataObjectWithGaVersionMatch() throws Exception {
205+
final String data = getCurrentEventStringFixture();
206+
final Event event = ApiResource.GSON.fromJson(data, Event.class);
207+
208+
final String ApiVersion = "2025-04-01.basil";
209+
210+
// the SDK is on a GA version that matches the event version exactly
211+
event.setApiVersion(ApiVersion);
212+
213+
EventDataObjectDeserializer deserializer =
214+
stubIntegrationApiVersion(event.getDataObjectDeserializer(), ApiVersion);
215+
216+
assertTrue(deserializer.getObject().isPresent());
217+
}
218+
203219
@Test
204220
public void testGetDataObjectWithPreviewVersionMatch() throws Exception {
205221
final String data = getCurrentEventStringFixture();
206222
final Event event = ApiResource.GSON.fromJson(data, Event.class);
207223

208224
final String ApiVersion = "2025-04-01.preview";
209225

210-
// the SDK is on a preview version that is different from the preview version of the event
226+
// the SDK is on a preview version that matches the event version exactly
211227
event.setApiVersion(ApiVersion);
212228

213229
EventDataObjectDeserializer deserializer =
@@ -232,4 +248,38 @@ public void testGetDataObjectWithPreviewVersionMismatch() throws Exception {
232248

233249
assertFalse(deserializer.getObject().isPresent());
234250
}
251+
252+
@Test
253+
public void testGetDataObjectWithGaVersionMismatch() throws Exception {
254+
final String data = getCurrentEventStringFixture();
255+
final Event event = ApiResource.GSON.fromJson(data, Event.class);
256+
257+
final String eventApiVersion = "2025-04-01.preview";
258+
final String sdkApiVersion = "2025-05-01.basil";
259+
260+
// the SDK is on a preview version that is different from the preview version of the event
261+
event.setApiVersion(eventApiVersion);
262+
263+
EventDataObjectDeserializer deserializer =
264+
stubIntegrationApiVersion(event.getDataObjectDeserializer(), sdkApiVersion);
265+
266+
assertFalse(deserializer.getObject().isPresent());
267+
}
268+
269+
@Test
270+
public void testGetDataObjectWithGaPreviewVersionMismatch() throws Exception {
271+
final String data = getCurrentEventStringFixture();
272+
final Event event = ApiResource.GSON.fromJson(data, Event.class);
273+
274+
final String eventApiVersion = "2025-04-01.basil";
275+
final String sdkApiVersion = "2025-05-01.preview";
276+
277+
// the SDK is on a preview version that is different from the preview version of the event
278+
event.setApiVersion(eventApiVersion);
279+
280+
EventDataObjectDeserializer deserializer =
281+
stubIntegrationApiVersion(event.getDataObjectDeserializer(), sdkApiVersion);
282+
283+
assertFalse(deserializer.getObject().isPresent());
284+
}
235285
}

0 commit comments

Comments
 (0)