commit ef5b800cf0a9c3990d1c6f350790da3d2c53f90e
parent c01bee7d4143bff35e8b0565c259bd118595e3d3
Author: mcarare <48995920+mcarare@users.noreply.github.com>
Date: Thu, 6 Nov 2025 14:05:26 +0000
Bug 1996633 - Remove mockkStatic usage in HomeToolbarViewTest. r=android-reviewers,rebecatudor273
Differential Revision: https://phabricator.services.mozilla.com/D271573
Diffstat:
1 file changed, 12 insertions(+), 16 deletions(-)
diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/toolbar/HomeToolbarViewTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/toolbar/HomeToolbarViewTest.kt
@@ -5,16 +5,15 @@
package org.mozilla.fenix.home.toolbar
+import android.content.Context
+import android.content.res.Configuration
import android.view.LayoutInflater
import androidx.core.view.isVisible
import io.mockk.every
import io.mockk.mockk
-import io.mockk.mockkStatic
import io.mockk.spyk
-import io.mockk.unmockkStatic
import io.mockk.verify
import mozilla.components.support.test.robolectric.testContext
-import org.junit.After
import org.junit.Assert.assertNotNull
import org.junit.Assert.assertTrue
import org.junit.Before
@@ -22,8 +21,7 @@ import org.junit.Test
import org.junit.runner.RunWith
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.databinding.FragmentHomeBinding
-import org.mozilla.fenix.ext.isLargeWindow
-import org.mozilla.fenix.ext.settings
+import org.mozilla.fenix.ext.components
import org.mozilla.fenix.home.HomeFragment
import org.mozilla.fenix.home.HomeMenuView
import org.robolectric.RobolectricTestRunner
@@ -34,27 +32,22 @@ class HomeToolbarViewTest {
private lateinit var binding: FragmentHomeBinding
private lateinit var toolbarView: HomeToolbarView
+ private lateinit var context: Context
+
@Before
fun setup() {
- mockkStatic("mozilla.components.support.utils.ext.ContextKt")
- mockkStatic("org.mozilla.fenix.ext.ContextKt")
+ context = spyk(testContext)
val homeFragment: HomeFragment = mockk(relaxed = true)
val homeActivity: HomeActivity = mockk(relaxed = true)
binding = FragmentHomeBinding.inflate(LayoutInflater.from(testContext))
- every { homeFragment.requireContext() } returns testContext
- every { testContext.settings() } returns mockk(relaxed = true)
+ every { homeFragment.requireContext() } returns context
+ every { context.components.settings } returns mockk(relaxed = true)
toolbarView = spyk(HomeToolbarView(binding, mockk(relaxed = true), homeFragment, homeActivity))
every { toolbarView.buildHomeMenu() } returns mockk(relaxed = true)
every { toolbarView.buildTabCounter() } returns mockk(relaxed = true)
}
- @After
- fun teardown() {
- unmockkStatic("mozilla.components.support.utils.ext.ContextKt")
- unmockkStatic("org.mozilla.fenix.ext.ContextKt")
- }
-
@Test
fun `WHEN updateLayout is called THEN tab counter and menu are visible and initialized`() {
toolbarView.updateButtonVisibility(mockk(relaxed = true))
@@ -77,7 +70,10 @@ class HomeToolbarViewTest {
@Test
fun `GIVEN device is tablet WHEN updateLayout is called THEN tab counter and menu are visible and initialized`() {
- every { testContext.isLargeWindow() } returns true
+ val configuration = Configuration()
+ configuration.smallestScreenWidthDp = 900
+
+ every { context.resources.configuration } returns configuration
toolbarView.updateButtonVisibility(mockk(relaxed = true))