Skip to content

Commit c971368

Browse files
committed
Make the test speak with a MockWebServer
1 parent 76684d1 commit c971368

File tree

2 files changed

+21
-4
lines changed

2 files changed

+21
-4
lines changed

samples/generated-code/build.gradle

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,9 @@ dependencies {
4747
implementation "io.reactivex.rxjava2:rxjava:2.2.4"
4848
implementation "io.reactivex.rxjava2:rxandroid:2.1.0"
4949

50-
// JUnit4
50+
// Testing Dependencies
5151
testImplementation "junit:junit:4.12"
52+
testImplementation "com.squareup.okhttp3:mockwebserver:3.12.3"
5253
}
5354

5455
generateSwagger {

samples/generated-code/src/test/java/com/yelp/codegen/generatecodesamples/InvokeRetrofitTest.kt

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,41 @@ package com.yelp.codegen.generatecodesamples
22

33
import com.yelp.codegen.generatecodesamples.apis.DefaultApi
44
import com.yelp.codegen.generatecodesamples.tools.GeneratedCodeConverters
5+
import okhttp3.mockwebserver.MockResponse
6+
import okhttp3.mockwebserver.MockWebServer
57
import org.junit.Assert.assertEquals
8+
import org.junit.Rule
69
import org.junit.Test
710
import retrofit2.Retrofit
811
import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory
912

1013
class 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

Comments
 (0)