Skip to content

Commit

Permalink
Update test case
Browse files Browse the repository at this point in the history
  • Loading branch information
Kevin Li committed May 24, 2021
1 parent 58566ee commit 8fbd243
Show file tree
Hide file tree
Showing 5 changed files with 24 additions and 15 deletions.
3 changes: 1 addition & 2 deletions sdk/src/main/java/com/mapbox/maps/MapView.kt
Original file line number Diff line number Diff line change
Expand Up @@ -110,8 +110,7 @@ open class MapView : FrameLayout, MapPluginProviderDelegate, MapControllable {
val resourceOptions =
ResourcesAttributeParser.parseResourcesOptions(
context,
typedArray,
CredentialsManager.default
typedArray
)
val mapOptions =
MapAttributeParser.parseMapOptions(typedArray, context.resources.displayMetrics.density)
Expand Down
9 changes: 6 additions & 3 deletions sdk/src/main/java/com/mapbox/maps/ResourceOptionsManager.kt
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package com.mapbox.maps

import android.content.Context
import androidx.annotation.VisibleForTesting
import androidx.annotation.VisibleForTesting.PRIVATE

/**
* Convenience class that holds the default ResourceOptions.
Expand All @@ -24,20 +26,21 @@ class ResourceOptionsManager(
* Static variables and methods.
*/
companion object {
private lateinit var default: ResourceOptionsManager
@VisibleForTesting(otherwise = PRIVATE)
internal var default: ResourceOptionsManager? = null

/**
* The default shared instance with default resource options.
*/
@Synchronized
fun getDefault(context: Context, token: String? = null): ResourceOptionsManager {
if (!this::default.isInitialized) {
if (default == null) {
default = ResourceOptionsManager(
ResourceOptions.Builder().applyDefaultParams(context, token)
.build()
)
}
return default
return default as ResourceOptionsManager
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,7 @@ internal object ResourcesAttributeParser {
*/
fun parseResourcesOptions(
context: Context,
typedArray: TypedArray,
credentialsManager: CredentialsManager
typedArray: TypedArray
): ResourceOptions {

val token = typedArray.getString(R.styleable.mapbox_MapView_mapbox_resourcesAccessToken)
Expand Down
2 changes: 1 addition & 1 deletion sdk/src/test/java/com/mapbox/maps/MapViewTest.kt
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ class MapViewTest {
mockkObject(CameraAttributeParser)
every { context.resources } returns resources
every { resources.displayMetrics } returns displayMetrics
every { ResourcesAttributeParser.parseResourcesOptions(any(), any(), any()) } returns mockk()
every { ResourcesAttributeParser.parseResourcesOptions(any(), any()) } returns mockk()
every { MapAttributeParser.parseMapOptions(any(), any()) } returns mockk()
every { CameraAttributeParser.parseCameraOptions(any()) } returns mockk()
every { typedArray.getInt(R.styleable.mapbox_MapView_mapbox_mapSurface, 0) } returns 1
Expand Down
22 changes: 15 additions & 7 deletions sdk/src/test/java/com/mapbox/maps/ResourceAttributeParserTest.kt
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,13 @@ class ResourceAttributeParserTest {
every { typedArray.getBoolean(any(), any()) } returns true
every { typedArray.getFloat(any(), any()) } returns 99.0f
every { typedArray.hasValue(any()) } returns true
ResourceOptionsManager.default = null
}

@Test
fun default() {
val resourceOptions =
ResourcesAttributeParser.parseResourcesOptions(context, typedArray, CredentialsManager.default)
ResourcesAttributeParser.parseResourcesOptions(context, typedArray)
assertEquals("pk.foobar", resourceOptions.accessToken)
assertEquals(null, resourceOptions.baseURL)
assertEquals("/foobar/mapbox/maps/ambient_cache.db", resourceOptions.cachePath)
Expand All @@ -43,14 +44,23 @@ class ResourceAttributeParserTest {
fun noAccessTokenResource() {
every { resources.getIdentifier("mapbox_access_token", "string", "foobar") } returns 0
val options =
ResourcesAttributeParser.parseResourcesOptions(context, typedArray, CredentialsManager.default)
ResourcesAttributeParser.parseResourcesOptions(context, typedArray)
assertEquals("", options.accessToken)
}

@Test
fun noAccessTokenResourceHasTokenFromAttr() {
every { resources.getIdentifier("mapbox_access_token", "string", "foobar") } returns 0
every { typedArray.getString(R.styleable.mapbox_MapView_mapbox_resourcesAccessToken) } returns "token"
val options =
ResourcesAttributeParser.parseResourcesOptions(context, typedArray)
assertEquals("token", options.accessToken)
}

@Test
fun cachePath() {
val resourceOptions =
ResourcesAttributeParser.parseResourcesOptions(context, typedArray, CredentialsManager.default)
ResourcesAttributeParser.parseResourcesOptions(context, typedArray)
assertEquals("/foobar/mapbox/maps/ambient_cache.db", resourceOptions.cachePath)
}

Expand All @@ -66,8 +76,7 @@ class ResourceAttributeParserTest {
1234L,
ResourcesAttributeParser.parseResourcesOptions(
context,
typedArray,
CredentialsManager.default
typedArray
).cacheSize
)
}
Expand All @@ -79,8 +88,7 @@ class ResourceAttributeParserTest {
"mapbox.be",
ResourcesAttributeParser.parseResourcesOptions(
context,
typedArray,
CredentialsManager.default
typedArray
).baseURL
)
}
Expand Down

0 comments on commit 8fbd243

Please sign in to comment.