For #23821 - Add telemtry for RecentlyVisted Homepage (#23909)

Add test

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Ryan VanderMeulen <rvandermeulen@mozilla.com>
upstream-sync
Sarah541 2 years ago committed by GitHub
parent a9fb2dc718
commit a222ea521d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -7168,3 +7168,31 @@ wallpapers:
data_sensitivity:
- interaction
expires: 114
recently_visited_homepage:
history_highlight_opened:
type: event
description: |
User has opened any history highlight from homepage
bugs:
- https://github.com/mozilla-mobile/fenix/issues/23821
data_reviews:
- https://github.com/mozilla-mobile/fenix/pull/23909
notification_emails:
- android-probes@mozilla.com
data_sensitivity:
- interaction
expires: 114
search_group_opened:
type: event
description: |
User has opened a search group from homepage
bugs:
- https://github.com/mozilla-mobile/fenix/issues/23821
data_reviews:
- https://github.com/mozilla-mobile/fenix/pull/23909
notification_emails:
- android-probes@mozilla.com
data_sensitivity:
- interaction
expires: 114

@ -84,6 +84,8 @@ sealed class Event {
data class HistoryRecentSearchesTapped(val source: String) : Event() {
override val extras = mapOf(History.recentSearchesTappedKeys.pageNumber to source)
}
object HistoryHighlightOpened : Event()
object HistorySearchGroupOpened : Event()
object HistorySearchTermGroupTapped : Event()
object HistorySearchTermGroupOpenTab : Event()
object HistorySearchTermGroupRemoveTab : Event()

@ -42,6 +42,7 @@ import org.mozilla.fenix.GleanMetrics.RecentBookmarks
import org.mozilla.fenix.GleanMetrics.RecentSearches
import org.mozilla.fenix.GleanMetrics.RecentTabs
import org.mozilla.fenix.GleanMetrics.RecentlyClosedTabs
import org.mozilla.fenix.GleanMetrics.RecentlyVisitedHomepage
import org.mozilla.fenix.GleanMetrics.SearchShortcuts
import org.mozilla.fenix.GleanMetrics.SearchTerms
import org.mozilla.fenix.GleanMetrics.SearchWidget
@ -954,6 +955,13 @@ private val Event.wrapper: EventWrapper<*>?
}
)
is Event.HistoryHighlightOpened -> EventWrapper<NoExtraKeys>(
{ RecentlyVisitedHomepage.historyHighlightOpened.record() }
)
is Event.HistorySearchGroupOpened -> EventWrapper<NoExtraKeys>(
{ RecentlyVisitedHomepage.searchGroupOpened.record() }
)
// Don't record other events in Glean:
is Event.AddBookmark -> null
is Event.OpenedAppFirstRun -> null

@ -64,9 +64,11 @@ class RecentlyVisitedViewHolder(
onRecentVisitClick = { recentlyVisitedItem, pageNumber ->
when (recentlyVisitedItem) {
is RecentHistoryHighlight -> {
metrics.track(Event.HistoryHighlightOpened)
interactor.onRecentHistoryHighlightClicked(recentlyVisitedItem)
}
is RecentHistoryGroup -> {
metrics.track(Event.HistorySearchGroupOpened)
metrics.track(Event.HistoryRecentSearchesTapped(pageNumber.toString()))
interactor.onRecentHistoryGroupClicked(recentlyVisitedItem)
}

@ -20,6 +20,7 @@ import org.mozilla.fenix.GleanMetrics.CreditCards
import org.mozilla.fenix.GleanMetrics.Events
import org.mozilla.fenix.GleanMetrics.History
import org.mozilla.fenix.GleanMetrics.RecentBookmarks
import org.mozilla.fenix.GleanMetrics.RecentlyVisitedHomepage
import org.mozilla.fenix.GleanMetrics.SyncedTabs
import org.mozilla.fenix.GleanMetrics.TabsTray
import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
@ -319,6 +320,17 @@ class GleanMetricsServiceTest {
assertTrue(RecentBookmarks.showAllBookmarks.testHasValue())
}
@Test
fun `Home screen recently visited events are correctly recorded`() {
assertFalse(RecentlyVisitedHomepage.historyHighlightOpened.testHasValue())
gleanService.track(Event.HistoryHighlightOpened)
assertTrue(RecentlyVisitedHomepage.historyHighlightOpened.testHasValue())
assertFalse(RecentlyVisitedHomepage.searchGroupOpened.testHasValue())
gleanService.track(Event.HistorySearchGroupOpened)
assertTrue(RecentlyVisitedHomepage.searchGroupOpened.testHasValue())
}
@Test
fun `credit card events are correctly recorded`() {
assertFalse(CreditCards.saved.testHasValue())

Loading…
Cancel
Save