Skip to content

Commit 0948a22

Browse files
committedSep 30, 2024·
test case fixes and remove unused code
1 parent 5c5afe9 commit 0948a22

File tree

5 files changed

+21
-30
lines changed

5 files changed

+21
-30
lines changed
 

‎src/main/kotlin/com/featurevisor/sdk/FeaturevisorError.kt

-3
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,4 @@ sealed class FeaturevisorError(message: String) : Throwable(message = message) {
1919
class InvalidUrl(val url: String?) : FeaturevisorError("Invalid URL")
2020

2121
object MissingDatafileUrlWhileRefreshing : FeaturevisorError("Missing datafile url need to refresh")
22-
23-
/// Fetching was cancelled
24-
object FetchingDataFileCancelled : FeaturevisorError("Fetching data file cancelled")
2522
}

‎src/main/kotlin/com/featurevisor/sdk/Instance+Fetch.kt

+3-4
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ import kotlinx.serialization.json.Json
88
import okhttp3.HttpUrl.Companion.toHttpUrl
99
import java.lang.IllegalArgumentException
1010

11+
const val BODY_BYTE_COUNT = 1000000L
12+
val client = OkHttpClient()
13+
1114
// MARK: - Fetch datafile content
1215
@Throws(IOException::class)
1316
internal fun FeaturevisorInstance.fetchDatafileContent(
@@ -40,10 +43,6 @@ private fun fetchDatafileContentFromUrl(
4043
}
4144
}
4245

43-
const val BODY_BYTE_COUNT = 1000000L
44-
val client = OkHttpClient()
45-
46-
4746
private inline fun fetch(
4847
request: Request,
4948
crossinline completion: (Result<DatafileContent>) -> Unit,

‎src/main/kotlin/com/featurevisor/sdk/InstanceOptions.kt

-2
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@ data class InstanceOptions(
2323
val onError: Listener? = null,
2424
val refreshInterval: Long? = null, // seconds
2525
val stickyFeatures: StickyFeatures? = null,
26-
val retryInterval: Long = 300L,
27-
val retryCount: Int = 1,
2826
) {
2927
companion object {
3028
private const val defaultBucketKeySeparator = "."

‎src/main/kotlin/com/featurevisor/types/Types.kt

-6
Original file line numberDiff line numberDiff line change
@@ -339,12 +339,6 @@ data class DatafileContent(
339339
val features: List<Feature>,
340340
)
341341

342-
@Serializable
343-
data class DatafileFetchResult(
344-
val datafileContent: DatafileContent,
345-
val responseBodyString: String
346-
)
347-
348342
@Serializable
349343
data class OverrideFeature(
350344
val enabled: Boolean,

‎src/test/kotlin/com/featurevisor/sdk/InstanceTest.kt

+18-15
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import io.kotest.matchers.shouldBe
88
import io.mockk.coEvery
99
import io.mockk.mockk
1010
import io.mockk.unmockkAll
11+
import io.mockk.verify
1112
import kotlinx.coroutines.*
1213
import kotlinx.coroutines.test.TestCoroutineDispatcher
1314
import kotlinx.coroutines.test.TestCoroutineScope
@@ -73,21 +74,23 @@ class InstanceTest {
7374

7475
@Test
7576
fun `instance fetches data using handleDatafileFetch`() {
76-
coEvery { mockDatafileFetchHandler(datafileUrl) } returns Result.success(datafileContent)
77-
instanceOptions = instanceOptions.copy(
78-
datafileUrl = datafileUrl,
79-
datafile = null,
80-
handleDatafileFetch = mockDatafileFetchHandler,
81-
)
82-
83-
FeaturevisorInstance.createInstance(
84-
options = instanceOptions
85-
)
86-
// TODO: FixMe
87-
// verify(exactly = 1) {
88-
// mockDatafileFetchHandler(datafileUrl)
89-
// }
90-
systemUnderTest.statuses.ready shouldBe true
77+
testScope.launch {
78+
coEvery { mockDatafileFetchHandler(datafileUrl) } returns Result.success(datafileContent)
79+
80+
val sdk = FeaturevisorInstance.createInstance(
81+
options = instanceOptions.copy(
82+
datafileUrl = datafileUrl,
83+
datafile = null,
84+
handleDatafileFetch = mockDatafileFetchHandler,
85+
)
86+
)
87+
88+
sdk.statuses.ready shouldBe true
89+
90+
verify(exactly = 1) {
91+
mockDatafileFetchHandler(datafileUrl)
92+
}
93+
}
9194
}
9295

9396
@Test

0 commit comments

Comments
 (0)
Please sign in to comment.