Implement BaseTest

This commit is contained in:
Kirill Kamakin
2021-11-13 11:25:30 +03:00
parent c94fff2864
commit 603504f7fe
2 changed files with 22 additions and 17 deletions

View File

@@ -1,10 +1,7 @@
package gq.kirmanak.mealie.data.auth.impl package gq.kirmanak.mealie.data.auth.impl
import androidx.test.ext.junit.runners.AndroidJUnit4
import com.google.common.truth.Truth.assertThat import com.google.common.truth.Truth.assertThat
import dagger.hilt.android.testing.HiltAndroidRule
import dagger.hilt.android.testing.HiltAndroidTest import dagger.hilt.android.testing.HiltAndroidTest
import dagger.hilt.android.testing.HiltTestApplication
import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.runBlocking import kotlinx.coroutines.runBlocking
import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.ExperimentalSerializationApi
@@ -13,10 +10,7 @@ import okhttp3.mockwebserver.MockWebServer
import okhttp3.mockwebserver.RecordedRequest import okhttp3.mockwebserver.RecordedRequest
import org.junit.After import org.junit.After
import org.junit.Before import org.junit.Before
import org.junit.Rule
import org.junit.Test import org.junit.Test
import org.junit.runner.RunWith
import org.robolectric.annotation.Config
import retrofit2.HttpException import retrofit2.HttpException
import java.nio.charset.Charset import java.nio.charset.Charset
import javax.inject.Inject import javax.inject.Inject
@@ -24,22 +18,12 @@ import javax.inject.Inject
@ExperimentalSerializationApi @ExperimentalSerializationApi
@ExperimentalCoroutinesApi @ExperimentalCoroutinesApi
@HiltAndroidTest @HiltAndroidTest
@RunWith(AndroidJUnit4::class) class AuthDataSourceImplTest : BaseTest() {
@Config(application = HiltTestApplication::class)
class AuthDataSourceImplTest {
@get:Rule
var hiltRule = HiltAndroidRule(this)
@Inject @Inject
lateinit var subject: AuthDataSourceImpl lateinit var subject: AuthDataSourceImpl
private lateinit var mockServer: MockWebServer private lateinit var mockServer: MockWebServer
private lateinit var serverUrl: String private lateinit var serverUrl: String
@Before
fun inject() {
hiltRule.inject()
}
@Before @Before
fun startMockServer() { fun startMockServer() {
mockServer = MockWebServer().apply { mockServer = MockWebServer().apply {

View File

@@ -0,0 +1,21 @@
package gq.kirmanak.mealie.data.auth.impl
import androidx.test.ext.junit.runners.AndroidJUnit4
import dagger.hilt.android.testing.HiltAndroidRule
import dagger.hilt.android.testing.HiltTestApplication
import org.junit.Before
import org.junit.Rule
import org.junit.runner.RunWith
import org.robolectric.annotation.Config
@RunWith(AndroidJUnit4::class)
@Config(application = HiltTestApplication::class)
abstract class BaseTest {
@get:Rule
var hiltRule = HiltAndroidRule(this)
@Before
fun inject() {
hiltRule.inject()
}
}