From 7449540f3483219322e3eb062d3ce463422e86de Mon Sep 17 00:00:00 2001 From: Sahil Kumar Date: Tue, 27 Jul 2021 18:35:15 +0530 Subject: [PATCH] fix(llc, ui): fix failing tests Signed-off-by: xsahil03x --- .../lib/src/core/models/message.dart | 2 +- .../lib/src/core/models/message.g.dart | 2 +- .../stream_chat/lib/src/core/models/user.dart | 6 +++- .../lib/src/core/models/user.g.dart | 2 +- .../test/src/message_text_test.dart | 28 +++++++++++++------ 5 files changed, 27 insertions(+), 13 deletions(-) diff --git a/packages/stream_chat/lib/src/core/models/message.dart b/packages/stream_chat/lib/src/core/models/message.dart index d5435222..6ad8721c 100644 --- a/packages/stream_chat/lib/src/core/models/message.dart +++ b/packages/stream_chat/lib/src/core/models/message.dart @@ -220,7 +220,7 @@ class Message extends Equatable { final DateTime? deletedAt; /// A Map of translations. - @JsonKey(includeIfNull: false, toJson: Serializer.readOnly) + @JsonKey(includeIfNull: false) final Map? i18n; /// Known top level fields. diff --git a/packages/stream_chat/lib/src/core/models/message.g.dart b/packages/stream_chat/lib/src/core/models/message.g.dart index 5fb559f0..25254e2c 100644 --- a/packages/stream_chat/lib/src/core/models/message.g.dart +++ b/packages/stream_chat/lib/src/core/models/message.g.dart @@ -110,6 +110,6 @@ Map _$MessageToJson(Message instance) { val['pinned_by'] = readonly(instance.pinnedBy); val['extra_data'] = instance.extraData; writeNotNull('deleted_at', readonly(instance.deletedAt)); - writeNotNull('i18n', readonly(instance.i18n)); + writeNotNull('i18n', instance.i18n); return val; } diff --git a/packages/stream_chat/lib/src/core/models/user.dart b/packages/stream_chat/lib/src/core/models/user.dart index 2cdb6dd6..dd4abcc6 100644 --- a/packages/stream_chat/lib/src/core/models/user.dart +++ b/packages/stream_chat/lib/src/core/models/user.dart @@ -87,7 +87,11 @@ class User extends Equatable { /// The language this user prefers. /// /// Defaults to 'en'. - @JsonKey(defaultValue: 'en') + @JsonKey( + includeIfNull: false, + toJson: Serializer.readOnly, + defaultValue: 'en', + ) final String language; /// Shortcut for user name diff --git a/packages/stream_chat/lib/src/core/models/user.g.dart b/packages/stream_chat/lib/src/core/models/user.g.dart index 85fdfef9..7b193f04 100644 --- a/packages/stream_chat/lib/src/core/models/user.g.dart +++ b/packages/stream_chat/lib/src/core/models/user.g.dart @@ -48,6 +48,6 @@ Map _$UserToJson(User instance) { writeNotNull('online', readonly(instance.online)); writeNotNull('banned', readonly(instance.banned)); val['extra_data'] = instance.extraData; - val['language'] = instance.language; + writeNotNull('language', readonly(instance.language)); return val; } diff --git a/packages/stream_chat_flutter/test/src/message_text_test.dart b/packages/stream_chat_flutter/test/src/message_text_test.dart index 80ba5a3c..5bfe0a34 100644 --- a/packages/stream_chat_flutter/test/src/message_text_test.dart +++ b/packages/stream_chat_flutter/test/src/message_text_test.dart @@ -34,6 +34,7 @@ void main() { testWidgets( 'it should show correct message text', (WidgetTester tester) async { + final currentUser = OwnUser(id: 'user-id'); final client = MockClient(); final clientState = MockClientState(); final channel = MockChannel(); @@ -43,7 +44,9 @@ void main() { final streamTheme = StreamChatThemeData.fromTheme(themeData); when(() => client.state).thenReturn(clientState); - when(() => clientState.currentUser).thenReturn(OwnUser(id: 'user-id')); + when(() => clientState.currentUser).thenReturn(currentUser); + when(() => clientState.currentUserStream) + .thenAnswer((_) => Stream.value(currentUser)); when(() => channel.lastMessageAt).thenReturn(lastMessageAt); when(() => channel.state).thenReturn(channelState); when(() => channel.client).thenReturn(client); @@ -176,6 +179,7 @@ void main() { testGoldens( 'control test', (WidgetTester tester) async { + final currentUser = OwnUser(id: 'user-id'); final client = MockClient(); final clientState = MockClientState(); final channel = MockChannel(); @@ -185,7 +189,9 @@ void main() { final streamTheme = StreamChatThemeData.fromTheme(themeData); when(() => client.state).thenReturn(clientState); - when(() => clientState.currentUser).thenReturn(OwnUser(id: 'user-id')); + when(() => clientState.currentUser).thenReturn(currentUser); + when(() => clientState.currentUserStream) + .thenAnswer((_) => Stream.value(currentUser)); when(() => channel.lastMessageAt).thenReturn(lastMessageAt); when(() => channel.state).thenReturn(channelState); when(() => channel.client).thenReturn(client); @@ -209,14 +215,18 @@ cool.'''; await tester.pumpWidgetBuilder( materialAppWrapper()(SimpleFrame( - child: StreamChannel( - channel: channel, - child: Scaffold( - body: MessageText( - message: Message( - text: messageText, + child: StreamChat( + client: client, + connectivityStream: Stream.value(ConnectivityResult.wifi), + child: StreamChannel( + channel: channel, + child: Scaffold( + body: MessageText( + message: Message( + text: messageText, + ), + messageTheme: streamTheme.otherMessageTheme, ), - messageTheme: streamTheme.otherMessageTheme, ), ), ),