@@ -486,12 +486,24 @@ void main() {
486486 const TextSelection .collapsed (offset: '😊' .length));
487487 });
488488
489+ test ('Consecutive emoji shortcuts' , () {
490+ controller.replaceText (0 , 0 , ':' );
491+ controller.replaceText (1 , 0 , ')' ,
492+ selection: TextSelection .collapsed (offset: 1 ));
493+ controller.replaceText (2 , 0 , ':' );
494+ controller.replaceText (3 , 0 , ')' ,
495+ selection: TextSelection .collapsed (offset: 3 ));
496+ expect (controller.document.toDelta (), Delta ()..insert ('😊😊\n ' ));
497+ expect (controller.selection,
498+ const TextSelection .collapsed (offset: '😊😊' .length));
499+ });
500+
489501 test ('Undo emoji shortcuts' , () {
490502 controller.replaceText (0 , 0 , ':' );
491503 controller.replaceText (1 , 0 , ')' ,
492504 selection: TextSelection .collapsed (offset: 1 ));
493- controller.replaceText ('😊' .length , '😊' .length, '' ,
494- selection: const TextSelection .collapsed (offset: '😊' .length ));
505+ controller.replaceText (0 , '😊' .length, '' ,
506+ selection: const TextSelection .collapsed (offset: 0 ));
495507 expect (controller.document.toDelta (), Delta ()..insert (':)\n ' ));
496508 expect (controller.selection, const TextSelection .collapsed (offset: 2 ));
497509 });
0 commit comments