If you add a bubble via the button on the notification but if the notif for it is older than the notifs for the bubbles in the stack, then that added bubble is removed immediately. This isn't expected and can result in the view state being out of sync with bubble data, i.e. BubbleStackView contains the view but BubbleData doesn't have the bubble so it can get added again (but the view is already in BSV causing the crash). This fixes the issue by marking newly added bubbles as "updated" which will ensure the newly added bubble won't be immediately removed. Had to adjust the tests to be setting a current time since that's what's used to mark the update time. Test: atest BubbleDataTest Bug: 207083906 Change-Id: I425de9c1ca514066340f9123b6004820e98674fd
WM Shell Test
This contains all tests written for WM (WindowManager) Shell and it's currently divided into 3 categories
- unittest, tests against individual functions, usually @SmallTest and do not require UI automation nor real device to run
- integration, this maybe a mix of functional and integration tests. Contains tests verify the WM Shell as a whole, like talking to WM core. This usually involves mocking the window manager service or even talking to the real one. Due to this nature, test cases in this package is normally annotated as @LargeTest and runs with UI automation on real device
- flicker, similar to functional tests with its sole focus on flickerness. See WM Shell Flicker Test Package for more details