Skip to content

Commit 853a865

Browse files
christophpurrermeta-codesync[bot]
authored andcommitted
Bridgeless-context BlobModuleTest (#59281)
Summary: Pull Request resolved: #59281 Migrate `BlobModuleTest` from the deprecated `createCatalystContextForTest` helper to `createTestReactApplicationContext`, so the test builds a bridgeless context directly. Add the `ShadowSoLoader` Robolectric shadow and stub the feature flags before context creation, since the bridgeless context reads them during init. Changelog: [Internal] Differential Revision: D126574362
1 parent 6d55e7b commit 853a865

1 file changed

Lines changed: 6 additions & 2 deletions

File tree

  • packages/react-native/ReactAndroid/src/test/java/com/facebook/react/modules/blob

‎packages/react-native/ReactAndroid/src/test/java/com/facebook/react/modules/blob/BlobModuleTest.kt‎

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,10 @@ import com.facebook.react.bridge.JavaOnlyArray
1212
import com.facebook.react.bridge.JavaOnlyMap
1313
import com.facebook.react.bridge.ReactApplicationContext
1414
import com.facebook.react.bridge.ReactTestHelper
15+
import com.facebook.react.internal.featureflags.ReactNativeFeatureFlagsForTests
1516
import com.facebook.soloader.SoLoader
1617
import com.facebook.testutils.shadows.ShadowArguments
18+
import com.facebook.testutils.shadows.ShadowSoLoader
1719
import java.io.ByteArrayInputStream
1820
import java.nio.ByteBuffer
1921
import java.util.UUID
@@ -26,11 +28,12 @@ import org.junit.runner.RunWith
2628
import org.mockito.MockedStatic
2729
import org.mockito.Mockito.mockStatic
2830
import org.robolectric.RobolectricTestRunner
31+
import org.robolectric.RuntimeEnvironment
2932
import org.robolectric.Shadows.shadowOf
3033
import org.robolectric.annotation.Config
3134

3235
@RunWith(RobolectricTestRunner::class)
33-
@Config(manifest = Config.NONE, shadows = [ShadowArguments::class])
36+
@Config(manifest = Config.NONE, shadows = [ShadowArguments::class, ShadowSoLoader::class])
3437
class BlobModuleTest {
3538
private lateinit var bytes: ByteArray
3639
private lateinit var blobId: String
@@ -40,6 +43,7 @@ class BlobModuleTest {
4043

4144
@Before
4245
fun prepareModules() {
46+
ReactNativeFeatureFlagsForTests.setUp()
4347
mockedStaticSoLoader = mockStatic(SoLoader::class.java)
4448
mockedStaticSoLoader
4549
.`when`<Boolean> { SoLoader.loadLibrary("reactnativeblob") }
@@ -48,7 +52,7 @@ class BlobModuleTest {
4852
bytes = ByteArray(120)
4953
Random.Default.nextBytes(bytes)
5054

51-
context = ReactTestHelper.createCatalystContextForTest()
55+
context = ReactTestHelper.createTestReactApplicationContext(RuntimeEnvironment.getApplication())
5256
blobModule = BlobModule(context)
5357
blobId = blobModule.store(bytes)
5458
}

0 commit comments

Comments
 (0)