Skip to content

Commit 154e6ec

Browse files
PIG208chrisbobbe
andcommitted
msglist: Use store.senderDisplayName for sender row
[chris: added tests] Co-authored-by: Chris Bobbe <[email protected]>
1 parent a4c564b commit 154e6ec

File tree

2 files changed

+25
-1
lines changed

2 files changed

+25
-1
lines changed

lib/widgets/message_list.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1437,7 +1437,7 @@ class _SenderRow extends StatelessWidget {
14371437
userId: message.senderId),
14381438
const SizedBox(width: 8),
14391439
Flexible(
1440-
child: Text(message.senderFullName, // TODO(#716): use `store.senderDisplayName`
1440+
child: Text(store.senderDisplayName(message),
14411441
style: TextStyle(
14421442
fontSize: 18,
14431443
height: (22 / 18),

test/widgets/message_list_test.dart

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1412,6 +1412,30 @@ void main() {
14121412
});
14131413

14141414
group('MessageWithPossibleSender', () {
1415+
testWidgets('known user', (tester) async {
1416+
final user = eg.user(fullName: 'Old Name');
1417+
await setupMessageListPage(tester,
1418+
messages: [eg.streamMessage(sender: user)],
1419+
users: [user]);
1420+
1421+
check(find.widgetWithText(MessageWithPossibleSender, 'Old Name')).findsOne();
1422+
1423+
// If the user's name changes, the sender row should update.
1424+
await store.handleEvent(RealmUserUpdateEvent(id: 1,
1425+
userId: user.userId, fullName: 'New Name'));
1426+
await tester.pump();
1427+
check(find.widgetWithText(MessageWithPossibleSender, 'New Name')).findsOne();
1428+
});
1429+
1430+
testWidgets('unknown user', (tester) async {
1431+
final user = eg.user(fullName: 'Some User');
1432+
await setupMessageListPage(tester, messages: [eg.streamMessage(sender: user)]);
1433+
check(store.getUser(user.userId)).isNull();
1434+
1435+
// The sender row should fall back to the name in the message.
1436+
check(find.widgetWithText(MessageWithPossibleSender, 'Some User')).findsOne();
1437+
});
1438+
14151439
testWidgets('Updates avatar on RealmUserUpdateEvent', (tester) async {
14161440
addTearDown(testBinding.reset);
14171441

0 commit comments

Comments
 (0)