8
0
Просмотр исходного кода

Added test checking if DOMConverter can return proper fake selection if DOM selection is placed inside text node.

Szymon Kupś 9 лет назад
Родитель
Сommit
1bca5046d0
1 измененных файлов с 20 добавлено и 0 удалено
  1. 20 0
      packages/ckeditor5-engine/tests/view/domconverter/dom-to-view.js

+ 20 - 0
packages/ckeditor5-engine/tests/view/domconverter/dom-to-view.js

@@ -675,5 +675,25 @@ describe( 'DomConverter', () => {
 
 			expect( bindViewSelection.isEqual( viewSelection ) ).to.be.true;
 		} );
+
+		it( 'should return fake selection if selection is placed inside text node', () => {
+			const domContainer = document.createElement( 'div' );
+			const domSelection = document.getSelection();
+			domContainer.innerHTML = 'fake selection container';
+			document.body.appendChild( domContainer );
+
+			const viewSelection = new ViewSelection();
+			viewSelection.addRange( ViewRange.createIn( new ViewElement() ) );
+			converter.bindFakeSelection( domContainer, viewSelection );
+
+			const domRange = new Range();
+			domRange.selectNodeContents( domContainer.firstChild );
+			domSelection.removeAllRanges();
+			domSelection.addRange( domRange );
+
+			const bindViewSelection = converter.domSelectionToView( domSelection );
+
+			expect( bindViewSelection.isEqual( viewSelection ) ).to.be.true;
+		} );
 	} );
 } );