[fenix] For https://github.com/mozilla-mobile/fenix/issues/24147 - Remove Event.wrapper for Search widget telemetry

pull/600/head
Alexandru2909 2 years ago committed by mergify[bot]
parent 4738ae1245
commit f57be9751a

@ -110,8 +110,6 @@ sealed class Event {
object CollectionTabLongPressed : Event() object CollectionTabLongPressed : Event()
object CollectionAddTabPressed : Event() object CollectionAddTabPressed : Event()
object CollectionRenamePressed : Event() object CollectionRenamePressed : Event()
object SearchWidgetNewTabPressed : Event()
object SearchWidgetVoiceSearchPressed : Event()
object TabMediaPlay : Event() object TabMediaPlay : Event()
object TabMediaPause : Event() object TabMediaPause : Event()
object MediaPlayState : Event() object MediaPlayState : Event()

@ -40,7 +40,6 @@ import org.mozilla.fenix.GleanMetrics.RecentTabs
import org.mozilla.fenix.GleanMetrics.RecentlyClosedTabs import org.mozilla.fenix.GleanMetrics.RecentlyClosedTabs
import org.mozilla.fenix.GleanMetrics.RecentlyVisitedHomepage import org.mozilla.fenix.GleanMetrics.RecentlyVisitedHomepage
import org.mozilla.fenix.GleanMetrics.SearchTerms import org.mozilla.fenix.GleanMetrics.SearchTerms
import org.mozilla.fenix.GleanMetrics.SearchWidget
import org.mozilla.fenix.GleanMetrics.StartOnHome import org.mozilla.fenix.GleanMetrics.StartOnHome
import org.mozilla.fenix.GleanMetrics.SyncAccount import org.mozilla.fenix.GleanMetrics.SyncAccount
import org.mozilla.fenix.GleanMetrics.SyncAuth import org.mozilla.fenix.GleanMetrics.SyncAuth
@ -393,12 +392,6 @@ private val Event.wrapper: EventWrapper<*>?
{ Collections.tabsAdded.record(it) }, { Collections.tabsAdded.record(it) },
{ Collections.tabsAddedKeys.valueOf(it) } { Collections.tabsAddedKeys.valueOf(it) }
) )
is Event.SearchWidgetNewTabPressed -> EventWrapper<NoExtraKeys>(
{ SearchWidget.newTabButton.record(it) }
)
is Event.SearchWidgetVoiceSearchPressed -> EventWrapper<NoExtraKeys>(
{ SearchWidget.voiceButton.record(it) }
)
is Event.WhatsNewTapped -> EventWrapper<NoExtraKeys>( is Event.WhatsNewTapped -> EventWrapper<NoExtraKeys>(
{ Events.whatsNewTapped.record(it) } { Events.whatsNewTapped.record(it) }
) )

@ -7,6 +7,8 @@ package org.mozilla.fenix.home.intent
import android.content.Intent import android.content.Intent
import androidx.navigation.NavController import androidx.navigation.NavController
import androidx.navigation.navOptions import androidx.navigation.navOptions
import mozilla.components.service.glean.private.NoExtras
import org.mozilla.fenix.GleanMetrics.SearchWidget
import org.mozilla.fenix.HomeActivity import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.NavGraphDirections import org.mozilla.fenix.NavGraphDirections
import org.mozilla.fenix.R import org.mozilla.fenix.R
@ -27,7 +29,7 @@ class StartSearchIntentProcessor(
return if (event != null) { return if (event != null) {
val source = when (event) { val source = when (event) {
SEARCH_WIDGET -> { SEARCH_WIDGET -> {
metrics.track(Event.SearchWidgetNewTabPressed) SearchWidget.newTabButton.record(NoExtras())
Event.PerformedSearch.SearchAccessPoint.WIDGET Event.PerformedSearch.SearchAccessPoint.WIDGET
} }
STATIC_SHORTCUT_NEW_TAB, STATIC_SHORTCUT_NEW_TAB,

@ -11,11 +11,11 @@ import android.os.StrictMode
import android.speech.RecognizerIntent import android.speech.RecognizerIntent
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import mozilla.components.support.locale.LocaleManager import mozilla.components.support.locale.LocaleManager
import mozilla.telemetry.glean.private.NoExtras
import org.mozilla.fenix.GleanMetrics.SearchWidget
import org.mozilla.fenix.HomeActivity import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.IntentReceiverActivity import org.mozilla.fenix.IntentReceiverActivity
import org.mozilla.fenix.components.metrics.Event
import org.mozilla.fenix.ext.components import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.metrics
/** /**
* Launches voice recognition then uses it to start a new web search. * Launches voice recognition then uses it to start a new web search.
@ -77,7 +77,7 @@ class VoiceSearchActivity : AppCompatActivity() {
} }
) )
} }
metrics.track(Event.SearchWidgetVoiceSearchPressed) SearchWidget.voiceButton.record(NoExtras())
startActivityForResult(intentSpeech, SPEECH_REQUEST_CODE) startActivityForResult(intentSpeech, SPEECH_REQUEST_CODE)
} }

@ -10,8 +10,14 @@ import androidx.navigation.navOptions
import io.mockk.Called import io.mockk.Called
import io.mockk.mockk import io.mockk.mockk
import io.mockk.verify import io.mockk.verify
import mozilla.components.service.glean.testing.GleanTestRule
import mozilla.components.support.test.robolectric.testContext
import org.junit.Assert.assertEquals
import org.junit.Assert.assertTrue
import org.junit.Rule
import org.junit.Test import org.junit.Test
import org.junit.runner.RunWith import org.junit.runner.RunWith
import org.mozilla.fenix.GleanMetrics.SearchWidget
import org.mozilla.fenix.HomeActivity import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.NavGraphDirections import org.mozilla.fenix.NavGraphDirections
import org.mozilla.fenix.R import org.mozilla.fenix.R
@ -23,6 +29,9 @@ import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
@RunWith(FenixRobolectricTestRunner::class) @RunWith(FenixRobolectricTestRunner::class)
class StartSearchIntentProcessorTest { class StartSearchIntentProcessorTest {
@get:Rule
val gleanTestRule = GleanTestRule(testContext)
private val metrics: MetricController = mockk(relaxed = true) private val metrics: MetricController = mockk(relaxed = true)
private val navController: NavController = mockk(relaxed = true) private val navController: NavController = mockk(relaxed = true)
private val out: Intent = mockk(relaxed = true) private val out: Intent = mockk(relaxed = true)
@ -58,7 +67,11 @@ class StartSearchIntentProcessorTest {
popUpTo = R.id.homeFragment popUpTo = R.id.homeFragment
} }
verify { metrics.track(Event.SearchWidgetNewTabPressed) } assertTrue(SearchWidget.newTabButton.testHasValue())
val recordedEvents = SearchWidget.newTabButton.testGetValue()
assertEquals(1, recordedEvents.size)
assertEquals(null, recordedEvents.single().extra)
verify { verify {
navController.nav( navController.nav(
null, null,

Loading…
Cancel
Save