@@ -2,25 +2,41 @@ package com.yelp.codegen.generatecodesamples
22
33import com.yelp.codegen.generatecodesamples.apis.DefaultApi
44import com.yelp.codegen.generatecodesamples.tools.GeneratedCodeConverters
5+ import okhttp3.mockwebserver.MockResponse
6+ import okhttp3.mockwebserver.MockWebServer
57import org.junit.Assert.assertEquals
8+ import org.junit.Rule
69import org.junit.Test
710import retrofit2.Retrofit
811import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory
912
1013class InvokeRetrofitTest {
1114
15+ @get:Rule
16+ val mockWebServer = MockWebServer ()
17+
1218 @Test
1319 fun createAndInvokeRetrofit () {
20+ mockWebServer.enqueue(MockResponse ().setBody("""
21+ {
22+ "name": "corgi",
23+ "id": 42,
24+ "photoUrls": [ "https://via.placeholder.com/150" ]
25+ }
26+ """ .trimIndent()))
27+
1428 val retrofit: Retrofit = Retrofit .Builder ()
1529 .addCallAdapterFactory(RxJava2CallAdapterFactory .create())
1630 .addConverterFactory(GeneratedCodeConverters .converterFactory())
17- .baseUrl(" https://petstore.swagger.io/v2/ " )
31+ .baseUrl(mockWebServer.url( " / " ) )
1832 .build()
1933
2034 val defaultApi = retrofit.create(DefaultApi ::class .java)
2135 val pet = defaultApi.getPetById(1 ).blockingGet()
2236
23- println (pet)
24- assertEquals(1L , pet.id)
37+ assertEquals(42L , pet.id)
38+ assertEquals(" corgi" , pet.name)
39+ assertEquals(1 , pet.photoUrls.size)
40+ assertEquals(" https://via.placeholder.com/150" , pet.photoUrls[0 ])
2541 }
2642}
0 commit comments