|
11 | 11 | import static org.junit.Assert.assertNotNull; |
12 | 12 | import static org.junit.Assert.assertNull; |
13 | 13 | import static org.junit.Assert.assertTrue; |
| 14 | +import static org.mockito.ArgumentMatchers.contains; |
14 | 15 | import static org.mockito.ArgumentMatchers.eq; |
15 | 16 | import static org.mockito.Mockito.any; |
16 | 17 | import static org.mockito.Mockito.anyInt; |
17 | 18 | import static org.mockito.Mockito.atLeastOnce; |
18 | 19 | import static org.mockito.Mockito.doAnswer; |
19 | 20 | import static org.mockito.Mockito.mock; |
| 21 | +import static org.mockito.Mockito.mockStatic; |
20 | 22 | import static org.mockito.Mockito.never; |
21 | 23 | import static org.mockito.Mockito.reset; |
22 | 24 | import static org.mockito.Mockito.spy; |
|
64 | 66 | import org.junit.Test; |
65 | 67 | import org.junit.runner.RunWith; |
66 | 68 | import org.mockito.ArgumentCaptor; |
| 69 | +import org.mockito.MockedStatic; |
67 | 70 | import org.mockito.invocation.InvocationOnMock; |
68 | 71 | import org.robolectric.RuntimeEnvironment; |
69 | 72 | import org.robolectric.annotation.Config; |
@@ -3247,6 +3250,38 @@ AccessibilityBridge setUpBridge( |
3247 | 3250 | platformViewsAccessibilityDelegate); |
3248 | 3251 | } |
3249 | 3252 |
|
| 3253 | + @Config(sdk = API_LEVELS.API_36) |
| 3254 | + @TargetApi(API_LEVELS.API_36) |
| 3255 | + @SuppressWarnings("deprecation") |
| 3256 | + @Test |
| 3257 | + public void itLogsDeprecationWarningForAnnounceOnAPI36() { |
| 3258 | + AccessibilityBridge accessibilityBridge = setUpBridge(); |
| 3259 | + try (MockedStatic<io.flutter.Log> mockedLog = mockStatic(io.flutter.Log.class)) { |
| 3260 | + accessibilityBridge.accessibilityMessageHandler.announce("Hello"); |
| 3261 | + |
| 3262 | + mockedLog.verify( |
| 3263 | + () -> |
| 3264 | + io.flutter.Log.w( |
| 3265 | + eq("AccessibilityBridge"), |
| 3266 | + contains( |
| 3267 | + "Using AnnounceSemanticsEvent for accessibility is deprecated on Android"))); |
| 3268 | + } |
| 3269 | + } |
| 3270 | + |
| 3271 | + @Config(sdk = API_LEVELS.API_35) |
| 3272 | + @TargetApi(API_LEVELS.API_35) |
| 3273 | + @SuppressWarnings("deprecation") |
| 3274 | + @Test |
| 3275 | + public void itDoesNotLogDeprecationWarningForAnnounceOnAPI35() { |
| 3276 | + AccessibilityBridge accessibilityBridge = setUpBridge(); |
| 3277 | + try (MockedStatic<io.flutter.Log> mockedLog = mockStatic(io.flutter.Log.class)) { |
| 3278 | + accessibilityBridge.accessibilityMessageHandler.announce("Hello"); |
| 3279 | + |
| 3280 | + mockedLog.verify( |
| 3281 | + () -> io.flutter.Log.w(eq("AccessibilityBridge"), any(String.class)), never()); |
| 3282 | + } |
| 3283 | + } |
| 3284 | + |
3250 | 3285 | /// The encoding for semantics is described in platform_view_android.cc |
3251 | 3286 | class TestSemanticsUpdate { |
3252 | 3287 | TestSemanticsUpdate(ByteBuffer buffer, String[] strings, ByteBuffer[] stringAttributeArgs) { |
|
0 commit comments