Re-enable the failed-message channel preview e2e test - #6581
Conversation
The behavior no longer reproduces: the channel preview shows the failed delivery icon for a message with SyncStatus.FAILED_PERMANENTLY, the same condition the message list uses.
PR checklist ✅All required conditions are satisfied:
🎉 Great job! This PR is ready for review. |
|
@CodeRabbit review |
✅ Action performedReview finished.
|
WalkthroughThe preview failure test for message delivery status is re-enabled by removing its ChangesMessage delivery test execution
Estimated code review effort: 1 (Trivial) | ~2 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
SDK Size Comparison 📏
|
The channel preview renders the failed state via MessageReadStatusIcon (Stream_MessageReadStatus_isError), while the page object reused the message list's Stream_MessageFailedIcon tag, which never exists in the channel list. The test could only pass when a leftover message-list node was still present during the pane transition.
…age-should-be-displayed-in-channel
…age-should-be-displayed-in-channel
|
|
🚀 Available in v7.7.0 |



Goal
Re-enable the e2e test
test_errorIndicatorShownInPreview_whenMessageFailedToBeSent, ignored since January 2025, and fix the selector bug that made it fail. The SDK behavior is correct: the channel preview shows the failed delivery icon for a message withSyncStatus.FAILED_PERMANENTLY(confirmed by the CI failure screenshot and UI hierarchy dump, which show the icon rendered with the expected resource id). The test failed because it asserted the wrong tag.Resolves AND-256
Implementation
MessageReadStatusIcon, taggedStream_MessageReadStatus_isError. The page object reused the message list'sStream_MessageFailedIcontag, which never exists in the channel list, so the assertion could only pass when a leftover message-list node was still present during the pane transition. The read, pending, and sent tags are shared between the two surfaces, which is why only the failed variant was broken.ChannelListPage.Channel.deliveryStatusIsFailednow points toStream_MessageReadStatus_isError, and the test asserts it through a newassertFailedMessageDeliveryStatusInPreviewhelper.@Ignorefrom the test. No production code changes.🎨 UI Changes
No UI changes.
Testing