Skip to content

Commit f2f393f

Browse files
christophpurrermeta-codesync[bot]
authored andcommitted
Bridgeless-context ReactImagePropertyTest (#59253)
Summary: Pull Request resolved: #59253 Replace the deprecated `BridgeReactContext` + mock `CatalystInstance` setup with `createTestReactApplicationContext`, stub feature flags before creating the context, and add the `ShadowSoLoader` Robolectric shadow. Changelog: [Internal] Reviewed By: javache Differential Revision: D126543660 fbshipit-source-id: 870e12d530cdb38d940e45b2bf2d723b57719098
1 parent 71548a3 commit f2f393f

1 file changed

Lines changed: 7 additions & 15 deletions

File tree

‎packages/react-native/ReactAndroid/src/test/java/com/facebook/react/views/image/ReactImagePropertyTest.kt‎

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,6 @@
55
* LICENSE file in the root directory of this source tree.
66
*/
77

8-
// TODO T207169925: Migrate CatalystInstance to Reacthost and remove the Suppress("DEPRECATION")
9-
// annotation
10-
@file:Suppress("DEPRECATION")
11-
128
package com.facebook.react.views.image
139

1410
import android.graphics.Color
@@ -19,10 +15,9 @@ import com.facebook.drawee.backends.pipeline.PipelineDraweeControllerBuilder
1915
import com.facebook.drawee.drawable.ScalingUtils
2016
import com.facebook.imagepipeline.request.ImageRequest
2117
import com.facebook.react.bridge.Arguments
22-
import com.facebook.react.bridge.BridgeReactContext
23-
import com.facebook.react.bridge.CatalystInstance
2418
import com.facebook.react.bridge.JavaOnlyMap
25-
import com.facebook.react.bridge.ReactTestHelper.createMockCatalystInstance
19+
import com.facebook.react.bridge.ReactApplicationContext
20+
import com.facebook.react.bridge.ReactTestHelper.createTestReactApplicationContext
2621
import com.facebook.react.common.ReactConstants
2722
import com.facebook.react.internal.featureflags.ReactNativeFeatureFlagsForTests
2823
import com.facebook.react.modules.fresco.ReactNetworkImageRequest
@@ -37,6 +32,7 @@ import com.facebook.react.util.RNLog
3732
import com.facebook.react.views.imagehelper.ImageSource
3833
import com.facebook.soloader.SoLoader
3934
import com.facebook.testutils.shadows.ShadowArguments
35+
import com.facebook.testutils.shadows.ShadowSoLoader
4036
import org.assertj.core.api.Assertions.assertThat
4137
import org.junit.After
4238
import org.junit.Before
@@ -61,33 +57,29 @@ import org.robolectric.annotation.Config
6157
* Verify that [com.facebook.drawee.drawable.ScalingUtils] properties are being applied correctly by
6258
* [ReactImageManager].
6359
*/
64-
@Config(shadows = [ShadowArguments::class])
60+
@Config(shadows = [ShadowArguments::class, ShadowSoLoader::class])
6561
@RunWith(RobolectricTestRunner::class)
6662
class ReactImagePropertyTest {
6763

68-
private lateinit var context: BridgeReactContext
69-
private lateinit var catalystInstanceMock: CatalystInstance
64+
private lateinit var context: ReactApplicationContext
7065
private lateinit var themeContext: ThemedReactContext
7166
private lateinit var rnLog: MockedStatic<RNLog>
7267
private lateinit var flogMock: MockedStatic<FLog>
7368

7469
@Before
7570
fun setup() {
71+
ReactNativeFeatureFlagsForTests.setUp()
7672

7773
rnLog = mockStatic(RNLog::class.java)
7874
rnLog.`when`<Boolean> { RNLog.w(any(), anyString()) }.thenAnswer {}
7975

8076
flogMock = mockStatic(FLog::class.java)
8177

8278
SoLoader.setInTestMode()
83-
context = BridgeReactContext(RuntimeEnvironment.getApplication())
84-
catalystInstanceMock = createMockCatalystInstance()
85-
context.initializeWithInstance(catalystInstanceMock)
79+
context = createTestReactApplicationContext(RuntimeEnvironment.getApplication())
8680
themeContext = ThemedReactContext(context, context, null, -1)
8781
Fresco.initialize(context)
8882
DisplayMetricsHolder.setScreenDisplayMetrics(DisplayMetrics())
89-
90-
ReactNativeFeatureFlagsForTests.setUp()
9183
}
9284

9385
@After

0 commit comments

Comments
 (0)