@@ -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