Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ class NetworkLeaderboardDaoTest {
}

@Test
fun whenSiteVisitedIncremenetedThenSiteVisitedCountIncreaesByOne() {
fun whenSitesVisitedIncrementedThenSiteVisitedCountIncreasesByOne() {
dao.incrementSitesVisited()
assertEquals(1, dao.sitesVisited().blockingObserve())
dao.incrementSitesVisited()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ class TrackersRendererTest {
}

@Test
fun whenSitestVisitedIsZeroThenPercentageIsBlank() {
fun whenSitesVisitedIsZeroThenPercentageIsBlank() {
val text = testee.networkPercentage(NetworkLeaderboardEntry("", 10), 0)
assertEquals("", text)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ class PrivacyDashboardViewModelTest {
private var viewStateObserver: Observer<PrivacyDashboardViewModel.ViewState> = mock()
private var settingStore: PrivacySettingsStore = mock()
private var networkLeaderboardDao: NetworkLeaderboardDao = mock()
private var networkLeaserboardLiveData: LiveData<List<NetworkLeaderboardEntry>> = mock()
private var networkLeaderboardLiveData: LiveData<List<NetworkLeaderboardEntry>> = mock()
private var sitesVisitedLiveData: LiveData<Int> = mock()
private var mockPixel: Pixel = mock()

Expand All @@ -61,9 +61,9 @@ class PrivacyDashboardViewModelTest {
@Before
fun before() {
whenever(sitesVisitedLiveData.value).thenReturn(0)
whenever(networkLeaserboardLiveData.value).thenReturn(emptyList())
whenever(networkLeaderboardLiveData.value).thenReturn(emptyList())
whenever(networkLeaderboardDao.sitesVisited()).thenReturn(sitesVisitedLiveData)
whenever(networkLeaderboardDao.trackerNetworkLeaderboard()).thenReturn(networkLeaserboardLiveData)
whenever(networkLeaderboardDao.trackerNetworkLeaderboard()).thenReturn(networkLeaderboardLiveData)
}

@After
Expand Down Expand Up @@ -151,32 +151,41 @@ class PrivacyDashboardViewModelTest {
}

@Test
fun whenNetworkCountIsAtLeastThreeAndTotalSitesIsOverThirtyThenShowSummaryIsTrue() {
fun whenNetworkCountIsThreeAndTotalSitesIsThirtyOneThenShowSummaryIsTrue() {
val first = NetworkLeaderboardEntry("Network1", 5)
val second = NetworkLeaderboardEntry("Network2", 3)
val third = NetworkLeaderboardEntry("Network3", 3)
testee.onTrackerNetworkEntriesChanged(listOf(first, second, third))
testee.onSitesVisitedChanged(31)
assertTrue(testee.viewState.value!!.showTrackerNetworkLeaderboard)
assertTrue(testee.viewState.value!!.shouldShowTrackerNetworkLeaderboard)
}

@Test
fun whenNetworkCountIsLessThanThreeThenShowSummaryIsFalse() {
fun whenNetworkCountIsTwoAndTotalSitesIsThirtyOneThenShowSummaryIsFalse() {
val first = NetworkLeaderboardEntry("Network1", 5)
val second = NetworkLeaderboardEntry("Network2", 3)
testee.onTrackerNetworkEntriesChanged(listOf(first, second))
testee.onSitesVisitedChanged(31)
assertFalse(testee.viewState.value!!.showTrackerNetworkLeaderboard)
assertFalse(testee.viewState.value!!.shouldShowTrackerNetworkLeaderboard)
}

@Test
fun whenSitesIsNotOverThirtyThenShowSummaryIsFalse() {
fun whenNetworkCountIsTwoAndTotalSitesIsThirtyThenShowSummaryIsFalse() {
val first = NetworkLeaderboardEntry("Network1", 5)
val second = NetworkLeaderboardEntry("Network2", 3)
testee.onTrackerNetworkEntriesChanged(listOf(first, second))
testee.onSitesVisitedChanged(30)
assertFalse(testee.viewState.value!!.shouldShowTrackerNetworkLeaderboard)
}

@Test
fun whenNetworkCountIsThreeAndTotalSitesIsThirtyThenShowSummaryIsFalse() {
val first = NetworkLeaderboardEntry("Network1", 5)
val second = NetworkLeaderboardEntry("Network2", 3)
val third = NetworkLeaderboardEntry("Network3", 3)
testee.onTrackerNetworkEntriesChanged(listOf(first, second, third))
testee.onSitesVisitedChanged(30)
assertFalse(testee.viewState.value!!.showTrackerNetworkLeaderboard)
assertFalse(testee.viewState.value!!.shouldShowTrackerNetworkLeaderboard)
}

@Test
Expand All @@ -195,7 +204,7 @@ class PrivacyDashboardViewModelTest {
testee.onTrackerNetworkEntriesChanged(emptyList())
val viewState = testee.viewState.value!!
assertEquals(emptyList<NetworkLeaderboardEntry>(), viewState.trackerNetworkEntries)
assertFalse(viewState.showTrackerNetworkLeaderboard)
assertFalse(viewState.shouldShowTrackerNetworkLeaderboard)
}

private fun site(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ class PrivacyDashboardActivity : DuckDuckGoActivity() {

private fun renderTrackerNetworkLeaderboard(viewState: ViewState) {

if (!viewState.showTrackerNetworkLeaderboard) {
if (!viewState.shouldShowTrackerNetworkLeaderboard) {
hideTrackerNetworkLeaderboard()
return
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ class PrivacyDashboardViewModel(
val allTrackersBlocked: Boolean,
val practices: PrivacyPractices.Summary,
val toggleEnabled: Boolean,
val showTrackerNetworkLeaderboard: Boolean,
val shouldShowTrackerNetworkLeaderboard: Boolean,
val sitesVisited: Int,
val trackerNetworkEntries: List<NetworkLeaderboardEntry>,
val shouldReloadPage: Boolean
Expand Down Expand Up @@ -84,7 +84,7 @@ class PrivacyDashboardViewModel(
val siteCount = count ?: 0
val networkCount = viewState.value?.trackerNetworkEntries?.count() ?: 0
viewState.value = viewState.value?.copy(
showTrackerNetworkLeaderboard = showTrackerNetworkLeaderboard(siteCount, networkCount),
shouldShowTrackerNetworkLeaderboard = showTrackerNetworkLeaderboard(siteCount, networkCount),
sitesVisited = siteCount
)
}
Expand All @@ -93,7 +93,7 @@ class PrivacyDashboardViewModel(
val domainCount = viewState.value?.sitesVisited ?: 0
val networkEntries = networkLeaderboardEntries ?: emptyList()
viewState.value = viewState.value?.copy(
showTrackerNetworkLeaderboard = showTrackerNetworkLeaderboard(domainCount, networkEntries.count()),
shouldShowTrackerNetworkLeaderboard = showTrackerNetworkLeaderboard(domainCount, networkEntries.count()),
trackerNetworkEntries = networkEntries
)
}
Expand Down Expand Up @@ -121,7 +121,7 @@ class PrivacyDashboardViewModel(
allTrackersBlocked = true,
toggleEnabled = settingsStore.privacyOn,
practices = UNKNOWN,
showTrackerNetworkLeaderboard = false,
shouldShowTrackerNetworkLeaderboard = false,
sitesVisited = 0,
trackerNetworkEntries = emptyList(),
shouldReloadPage = shouldReloadPage
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,11 +45,11 @@ class TrackerNetworkLeaderboardPillView : FrameLayout {
View.inflate(context, R.layout.view_network_tracker_pill, this)
}

fun render(netowrkEntity: NetworkLeaderboardEntry?, totalSitesVisited: Int) {
netowrkEntity ?: return
icon.setImageResource(renderer.networkPillIcon(context, netowrkEntity.networkName) ?: R.drawable.network_pill_generic)
val percentText = renderer.networkPercentage(netowrkEntity, totalSitesVisited)
icon.contentDescription = "${netowrkEntity.networkName} $percentText"
fun render(networkEntity: NetworkLeaderboardEntry?, totalSitesVisited: Int) {
networkEntity ?: return
icon.setImageResource(renderer.networkPillIcon(context, networkEntity.networkName) ?: R.drawable.network_pill_generic)
val percentText = renderer.networkPercentage(networkEntity, totalSitesVisited)
icon.contentDescription = "${networkEntity.networkName} $percentText"
percentage.text = percentText
}

Expand Down