77
88package com.facebook.react.views.text
99
10- import android.content.res.AssetManager
1110import android.graphics.Typeface
1211import android.text.SpannableString
1312import android.text.TextPaint
1413import com.facebook.react.bridge.JavaOnlyMap
14+ import com.facebook.react.common.annotations.UnstableReactNativeAPI
1515import com.facebook.react.common.mapbuffer.WritableMapBuffer
1616import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags
1717import com.facebook.react.internal.featureflags.ReactNativeFeatureFlagsForTests
@@ -30,6 +30,7 @@ import org.robolectric.annotation.Config
3030
3131@RunWith(RobolectricTestRunner ::class )
3232@Config(sdk = [34 ])
33+ @OptIn(UnstableReactNativeAPI ::class )
3334class TextLayoutManagerFontWeightAdjustmentTest {
3435
3536 @Before
@@ -50,7 +51,7 @@ class TextLayoutManagerFontWeightAdjustmentTest {
5051 val paint = TextPaint (TextPaint .ANTI_ALIAS_FLAG )
5152 val textAttributes = TextAttributeProps .fromReadableMap(ReactStylesDiffMap (JavaOnlyMap ()))
5253
53- invokeUpdateTextPaint (
54+ TextLayoutManager .updateTextPaint (
5455 paint,
5556 textAttributes,
5657 RuntimeEnvironment .getApplication().assets,
@@ -66,7 +67,7 @@ class TextLayoutManagerFontWeightAdjustmentTest {
6667 val paint = TextPaint (TextPaint .ANTI_ALIAS_FLAG )
6768 val textAttributes = TextAttributeProps .fromReadableMap(ReactStylesDiffMap (JavaOnlyMap ()))
6869
69- invokeUpdateTextPaint (
70+ TextLayoutManager .updateTextPaint (
7071 paint,
7172 textAttributes,
7273 RuntimeEnvironment .getApplication().assets,
@@ -120,27 +121,6 @@ class TextLayoutManagerFontWeightAdjustmentTest {
120121 assertThat(recachedSpannable).isSameAs(adjustedSpannable)
121122 }
122123
123- private fun invokeUpdateTextPaint (
124- paint : TextPaint ,
125- textAttributes : TextAttributeProps ,
126- assets : AssetManager ,
127- fontWeightAdjustment : Int ,
128- ) {
129- val method =
130- TextLayoutManager ::class
131- .java
132- .getDeclaredMethod(
133- " updateTextPaint" ,
134- TextPaint ::class .java,
135- TextAttributeProps ::class .java,
136- AssetManager ::class .java,
137- java.lang.Integer .TYPE ,
138- )
139- .apply { isAccessible = true }
140-
141- method.invoke(TextLayoutManager , paint, textAttributes, assets, fontWeightAdjustment)
142- }
143-
144124 private companion object {
145125 const val CACHE_ID = 1001
146126 const val FONT_WEIGHT_ADJUSTMENT_BOLD_TEXT = 300
0 commit comments