Gradle Test Run :app:testDevDebugUnitTest

PrivateChatViewModelTest

summary

113

tests

0

failures

0

skipped

12.030s

duration

100%

successful

Child Tests Failures Skipped Duration Success rate
addGroupParticipant calls repository 1 0 0 0.782s 100%
addStickerFromImage does nothing without stickerStorage 1 0 0 0.086s 100%
addStickerFromImage saves to storage and refreshes lists 1 0 0 0.264s 100%
blocked by other user sets isBlocked 1 0 0 0.084s 100%
blocked by self sets isBlocked 1 0 0 0.084s 100%
cancelEditing clears editing state 1 0 0 0.087s 100%
cancelReply clears state 1 0 0 0.080s 100%
clearError clears error state 1 0 0 0.078s 100%
closeStickerPicker closes picker 1 0 0 0.070s 100%
closeStickerPicker is no-op when already closed 1 0 0 0.084s 100%
deleteSticker calls stickerStorage removeSticker and refreshes list 1 0 0 0.074s 100%
deleteSticker does nothing without stickerStorage 1 0 0 0.080s 100%
empty messages list does not show error state 1 0 0 0.073s 100%
getEditHistory returns edit history from repository 1 0 0 0.083s 100%
getEditHistory returns empty list on error 1 0 0 0.084s 100%
hideConversation calls repo 1 0 0 0.098s 100%
hideMessage failure sets error 1 0 0 0.082s 100%
hideMessage success sends mod action message 1 0 0 0.085s 100%
init handles getOrCreateConversation failure 1 0 0 0.089s 100%
init loads users and conversationId 1 0 0 0.086s 100%
init skips when no currentUserId 1 0 0 0.071s 100%
initGroupChat loads group conversation 1 0 0 0.095s 100%
initOneOnOneChat sets isLoading false even when conversation fetch fails 1 0 0 0.089s 100%
isLoading is false after conversation loaded with no messages 1 0 0 0.121s 100%
isLoading is false after successful init completes 1 0 0 0.066s 100%
leaveGroup as non-admin calls removeGroupParticipant 1 0 0 0.123s 100%
leaveGroup calls closeGroupConversation for admin 1 0 0 0.142s 100%
loadOlderMessages does not run when messages empty 1 0 0 0.097s 100%
loadOlderMessages merges with existing messages 1 0 0 0.097s 100%
loadOlderMessages sets hasOlderMessages false when underfull 1 0 0 0.096s 100%
markMessagesAsRead calls repo when last message from other user is unread 1 0 0 0.088s 100%
markMessagesAsRead does not call repo when already read 1 0 0 0.082s 100%
markMessagesAsRead does not call repo when no messages from other user 1 0 0 0.080s 100%
messages flow updates state 1 0 0 0.074s 100%
moveStickerToFront calls stickerStorage moveSticker and refreshes list 1 0 0 0.950s 100%
moveStickerToFront does nothing without stickerStorage 1 0 0 0.103s 100%
muteGroupMember failure sets error 1 0 0 0.076s 100%
muteGroupMember success reloads mutes 1 0 0 0.100s 100%
observeMessages sets error state when flow throws exception 1 0 0 0.082s 100%
observeTyping updates state 1 0 0 0.086s 100%
onTextChanged sends typing indicator with correct params 1 0 0 0.092s 100%
onTextChanged sets typing 1 0 0 0.094s 100%
pmPrivacy EVERYONE does not block 1 0 0 0.079s 100%
pmPrivacy FOLLOWERS_ONLY allows when followed 1 0 0 0.082s 100%
pmPrivacy FOLLOWERS_ONLY blocks when not followed 1 0 0 0.074s 100%
pmPrivacy NO_ONE blocks messaging 1 0 0 0.074s 100%
recallMessage calls repo with correct params 1 0 0 0.096s 100%
recallMessage calls repository 1 0 0 0.107s 100%
recallMessage does nothing without conversationId 1 0 0 0.092s 100%
recallMessage sets error on failure 1 0 0 0.099s 100%
recallMessage success removes message via flow update 1 0 0 0.087s 100%
refreshMessages sets isRefreshing and re-subscribes 1 0 0 0.088s 100%
removeGroupParticipant calls repository 1 0 0 0.104s 100%
reportMessage calls reportRepo on success 1 0 0 0.117s 100%
reportMessage sets error on failure 1 0 0 0.102s 100%
searchMessages short query clears results 1 0 0 0.074s 100%
searchMessages updates results 1 0 0 0.081s 100%
sendImages calls repo with correct params 1 0 0 0.082s 100%
sendImages clears reply 1 0 0 0.097s 100%
sendImages rejects empty list 1 0 0 0.077s 100%
sendMessage calls repo with correct params 1 0 0 0.102s 100%
sendMessage clears reply 1 0 0 0.101s 100%
sendMessage moderation filter blocks 1 0 0 0.086s 100%
sendMessage rejects empty text 1 0 0 0.082s 100%
sendMessage rejects overlength text 1 0 0 0.082s 100%
sendMessage repo failure sets error 1 0 0 0.068s 100%
sendMessage spam filter blocks 1 0 0 0.080s 100%
sendMessage trims whitespace 1 0 0 0.124s 100%
sendMessage with whitespace-only text does not send 1 0 0 0.088s 100%
sendRoomInvite calls repository 1 0 0 0.093s 100%
sendRoomInvite failure sets error 1 0 0 0.087s 100%
sendSticker calls repo with correct params 1 0 0 0.098s 100%
sendSticker does nothing without conversationId 1 0 0 0.104s 100%
sendSticker with Sticker object marks as recent 1 0 0 0.079s 100%
sendSticker with Sticker object using URL sends directly 1 0 0 0.093s 100%
sendSticker with Sticker object without conversationId does nothing 1 0 0 0.082s 100%
settings flow updates mute and pin state 1 0 0 0.083s 100%
startEditing rejects expired window 1 0 0 0.078s 100%
startEditing rejects other users message 1 0 0 0.095s 100%
startEditing sets editing state 1 0 0 0.076s 100%
startReply sets state 1 0 0 0.072s 100%
submitEdit calls repo 1 0 0 0.089s 100%
submitEdit error sets error state 1 0 0 0.087s 100%
submitEdit rejects empty text 1 0 0 0.071s 100%
submitEdit success clears editing state 1 0 0 0.093s 100%
toggleMute calls muteConversation with false when currently muted 1 0 0 0.093s 100%
toggleMute calls muteConversation with true when currently unmuted 1 0 0 0.087s 100%
toggleMute calls repo with inverted value 1 0 0 0.165s 100%
togglePin calls pinConversation with false when currently pinned 1 0 0 0.113s 100%
togglePin calls pinConversation with true when currently unpinned 1 0 0 0.105s 100%
togglePin calls repo with inverted value 1 0 0 0.192s 100%
toggleReaction calls repo with correct params 1 0 0 0.096s 100%
toggleSearch enables and disables 1 0 0 0.084s 100%
toggleStickerPicker does not load stickers when closing 1 0 0 0.073s 100%
toggleStickerPicker loads stickers from storage when opening 1 0 0 0.079s 100%
toggleStickerPicker toggles state 1 0 0 0.080s 100%
transferOwnership failure sets error 1 0 0 0.098s 100%
transferOwnership success reinitializes group 1 0 0 0.086s 100%
unmuteGroupMember failure sets error 1 0 0 0.094s 100%
unmuteGroupMember success reloads mutes 1 0 0 0.094s 100%
updateGroupDescription calls repository 1 0 0 0.084s 100%
updateGroupName calls repo 1 0 0 0.086s 100%
updateGroupName calls repository 1 0 0 0.094s 100%
updateGroupName rejects blank name 1 0 0 0.082s 100%
updateGroupPermissions calls repository 1 0 0 0.088s 100%
updateGroupPhoto calls repository 1 0 0 0.097s 100%
updateGroupRoles failure sets error 1 0 0 0.082s 100%
updateGroupRoles success reinitializes group 1 0 0 0.087s 100%
updateModNotifyMode calls repository 1 0 0 0.070s 100%
updateSystemMessageConfig calls repository 1 0 0 0.120s 100%
uploadAndSendImages rejects empty list 1 0 0 0.079s 100%
uploadAndSendImages rejects over max images 1 0 0 0.092s 100%
uploadAndSendImages shows pending message immediately 1 0 0 0.104s 100%