diff options
author | Googler <noreply@google.com> | 2024-02-26 17:18:06 -0800 |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2024-02-26 17:18:56 -0800 |
commit | b18f8f152007ee6a26cc87f21e56798215471f7d (patch) | |
tree | 2993259acda4c1a57c5ae2ca7bdfbf638132951b /robolectric | |
parent | 7652f9865fbb6a6b945c352c21715611c01bbf37 (diff) | |
download | robolectric-b18f8f152007ee6a26cc87f21e56798215471f7d.tar.gz |
Clone AccessibilityNodeInfo with containerTitle and stateDescription
This change ensures that when AccessibilityNodeInfo objects are cloned within Robolectric tests, the containerTitle and stateDescription properties are correctly copied. This maintains essential contextual information for accessibility testing.
PiperOrigin-RevId: 610575066
Diffstat (limited to 'robolectric')
-rw-r--r-- | robolectric/src/test/java/org/robolectric/shadows/ShadowAccessibilityNodeInfoTest.java | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowAccessibilityNodeInfoTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowAccessibilityNodeInfoTest.java index c8e5ce125..74bf81c9c 100644 --- a/robolectric/src/test/java/org/robolectric/shadows/ShadowAccessibilityNodeInfoTest.java +++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowAccessibilityNodeInfoTest.java @@ -5,6 +5,8 @@ import static android.os.Build.VERSION_CODES.N; import static android.os.Build.VERSION_CODES.O; import static android.os.Build.VERSION_CODES.P; import static android.os.Build.VERSION_CODES.Q; +import static android.os.Build.VERSION_CODES.R; +import static android.os.Build.VERSION_CODES.UPSIDE_DOWN_CAKE; import static com.google.common.truth.Truth.assertThat; import static org.robolectric.Shadows.shadowOf; @@ -255,6 +257,30 @@ public class ShadowAccessibilityNodeInfoTest { } @Test + @Config(minSdk = R) + public void clone_preservesStateDescription() { + String description = "description"; + AccessibilityNodeInfo node = AccessibilityNodeInfo.obtain(); + node.setStateDescription(description); + + AccessibilityNodeInfo clone = AccessibilityNodeInfo.obtain(node); + + assertThat(clone.getStateDescription().toString()).isEqualTo(description); + } + + @Test + @Config(minSdk = UPSIDE_DOWN_CAKE) + public void clone_preservesContainerTitle() { + String title = "container title"; + AccessibilityNodeInfo node = AccessibilityNodeInfo.obtain(); + node.setContainerTitle(title); + + AccessibilityNodeInfo clone = AccessibilityNodeInfo.obtain(node); + + assertThat(clone.getContainerTitle().toString()).isEqualTo(title); + } + + @Test public void testGetBoundsInScreen() { AccessibilityNodeInfo root = AccessibilityNodeInfo.obtain(); Rect expected = new Rect(0, 0, 100, 100); |