import 'package:eatvio_app/features/chat/models/chat_message_model.dart'; import 'package:flutter_test/flutter_test.dart'; import '../../../fixtures/fixture_reader.dart'; void main() { group('ChatMessageModel', () { test('создает ChatMessageModel с правильными значениями', () { final model = ChatMessageModel( id: 1, data: 'Test message', mediaData: null, authorId: 123, updatedAt: DateTime(2024, 1, 1), isRead: false, isCurrentUserAuthor: true, roomId: 'room-1', ); expect(model.id, 1); expect(model.data, 'Test message'); expect(model.authorId, 123); expect(model.isRead, false); expect(model.messageState, MessageState.sent); }); test('fromJson создает ChatMessageModel из JSON', () { final json = FixtureReader.readAsMap('chat/chat_message_response.json'); final model = ChatMessageModel.fromJson(json); expect(model.id, 1); expect(model.data, 'Test message'); expect(model.authorId, 1); }); test('fromJson создает ChatMessageModel с медиа из JSON', () { final json = FixtureReader.readAsMap('chat/chat_message_with_media_response.json'); final model = ChatMessageModel.fromJson(json); expect(model.id, 2); expect(model.data, 'Message with attachment'); expect(model.mediaData, isNotNull); expect(model.mediaData!.length, 1); }); }); }