Closes #18253: Remove spaces from Addons telemetry comma-separated list (#19292)

upstream-sync
Roger Yang 3 years ago committed by GitHub
parent 8f39592c9c
commit 59de530a9c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -223,7 +223,7 @@ internal class ReleaseMetricController(
metadata?.get("enabled")?.let { enabledAddons ->
if (enabledAddons is List<*>) {
settings.enabledAddonsCount = enabledAddons.size
settings.enabledAddonsList = enabledAddons.joinToString()
settings.enabledAddonsList = enabledAddons.joinToString(",")
}
}

@ -15,11 +15,16 @@ import mozilla.components.support.base.Component
import mozilla.components.support.base.facts.Action
import mozilla.components.support.base.facts.Fact
import mozilla.components.support.base.log.logger.Logger
import mozilla.components.support.test.robolectric.testContext
import mozilla.components.support.webextensions.facts.WebExtensionFacts
import org.junit.Assert.assertEquals
import org.junit.Before
import org.junit.Test
import org.junit.runner.RunWith
import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
import org.mozilla.fenix.utils.Settings
@RunWith(FenixRobolectricTestRunner::class)
class MetricControllerTest {
@MockK(relaxUnitFun = true) private lateinit var dataService1: MetricsService
@ -338,7 +343,7 @@ class MetricControllerTest {
@Test
fun `web extension fact should set value in SharedPreference`() {
val enabled = true
val settings: Settings = mockk(relaxed = true)
val settings = Settings(testContext)
val controller = ReleaseMetricController(
services = listOf(dataService1),
isDataTelemetryEnabled = { enabled },
@ -350,19 +355,19 @@ class MetricControllerTest {
Action.INTERACTION,
WebExtensionFacts.Items.WEB_EXTENSIONS_INITIALIZED,
metadata = mapOf(
"installed" to listOf("test1"),
"enabled" to listOf("test2")
"installed" to listOf("test1", "test2", "test3", "test4"),
"enabled" to listOf("test2", "test4")
)
)
verify(exactly = 0) { settings.installedAddonsCount = any() }
verify(exactly = 0) { settings.installedAddonsList = any() }
verify(exactly = 0) { settings.enabledAddonsCount = any() }
verify(exactly = 0) { settings.enabledAddonsList = any() }
assertEquals(settings.installedAddonsCount, 0)
assertEquals(settings.installedAddonsList, "")
assertEquals(settings.enabledAddonsCount, 0)
assertEquals(settings.enabledAddonsList, "")
controller.factToEvent(fact)
verify(exactly = 1) { settings.installedAddonsCount = any() }
verify(exactly = 1) { settings.installedAddonsList = any() }
verify(exactly = 1) { settings.enabledAddonsCount = any() }
verify(exactly = 1) { settings.enabledAddonsList = any() }
assertEquals(settings.installedAddonsCount, 4)
assertEquals(settings.installedAddonsList, "test1,test2,test3,test4")
assertEquals(settings.enabledAddonsCount, 2)
assertEquals(settings.enabledAddonsList, "test2,test4")
}
}

Loading…
Cancel
Save