add basic test and fix default validator

This commit is contained in:
Salvatore Giordano
2021-12-10 15:53:28 +01:00
parent 0ec6e1c40f
commit b39c013e35
2 changed files with 31 additions and 1 deletions
@@ -63,7 +63,7 @@ class MessageInputController extends ValueNotifier<Message> {
bool get isValid => validator(value);
static bool _defaultValidator(Message message) =>
message.text?.isNotEmpty != true && message.attachments.isEmpty;
message.text?.isNotEmpty == true || message.attachments.isNotEmpty;
void _textEditingSyncer() {
final cleanText = value.command == null
@@ -0,0 +1,30 @@
import 'package:flutter_test/flutter_test.dart';
import 'package:stream_chat_flutter_core/stream_chat_flutter_core.dart';
void main() {
testWidgets(
'should instantiate a new MessageInputController with default validator'
' and empty message',
(tester) async {
final controller = MessageInputController();
expect(controller.isValid, false);
controller.text = 'test';
expect(controller.isValid, true);
},
);
testWidgets(
'should instantiate a new MessageInputController with default validator'
' and specified message',
(tester) async {
final message = Message(text: 'test');
final controller = MessageInputController(
message: message,
);
expect(controller.message, message);
expect(controller.isValid, true);
},
);
}