Browse Source

Aligned view tests to changes in view document.

Oskar Wróbel 8 years ago
parent
commit
4cf7a8b16e

+ 10 - 20
packages/ckeditor5-engine/tests/view/document/document.js

@@ -5,7 +5,6 @@
 
 /* globals document */
 
-import RootEditableElement from '../../../src/view/rooteditableelement';
 import createElement from '@ckeditor/ckeditor5-utils/src/dom/createelement';
 import Document from '../../../src/view/document';
 import Observer from '../../../src/view/observer/observer';
@@ -21,6 +20,7 @@ import testUtils from '@ckeditor/ckeditor5-core/tests/_utils/utils';
 import count from '@ckeditor/ckeditor5-utils/src/count';
 import log from '@ckeditor/ckeditor5-utils/src/log';
 import global from '@ckeditor/ckeditor5-utils/src/dom/global';
+import createViewRoot from '../_utils/createroot';
 
 testUtils.createSinonSandbox();
 
@@ -92,7 +92,7 @@ describe( 'Document', () => {
 	describe( 'attachDomRoot()', () => {
 		it( 'should attach DOM element to main view element', () => {
 			const domDiv = document.createElement( 'div' );
-			const viewRoot = createRoot( 'div', 'main', viewDocument );
+			const viewRoot = createViewRoot( viewDocument, 'div', 'main' );
 
 			expect( count( viewDocument.domRoots ) ).to.equal( 0 );
 
@@ -108,7 +108,7 @@ describe( 'Document', () => {
 
 		it( 'should attach DOM element to custom view element', () => {
 			const domH1 = document.createElement( 'h1' );
-			const viewH1 = createRoot( 'h1', 'header', viewDocument );
+			const viewH1 = createViewRoot( viewDocument, 'h1', 'header' );
 
 			expect( count( viewDocument.domRoots ) ).to.equal( 0 );
 
@@ -136,7 +136,7 @@ describe( 'Document', () => {
 			const observerMock = viewDocument.addObserver( ObserverMock );
 			const observerMockGlobalCount = viewDocument.addObserver( ObserverMockGlobalCount );
 
-			createRoot( 'div', 'root1', viewDocument );
+			createViewRoot( viewDocument, 'div', 'root1' );
 			viewDocument.attachDomRoot( document.createElement( 'div' ), 'root1' );
 
 			sinon.assert.calledOnce( observerMock.observe );
@@ -146,7 +146,7 @@ describe( 'Document', () => {
 
 	describe( 'getRoot()', () => {
 		it( 'should return "main" root', () => {
-			createRoot( 'div', 'main', viewDocument );
+			createViewRoot( viewDocument, 'div', 'main' );
 
 			expect( count( viewDocument.roots ) ).to.equal( 1 );
 
@@ -154,7 +154,7 @@ describe( 'Document', () => {
 		} );
 
 		it( 'should return named root', () => {
-			createRoot( 'h1', 'header', viewDocument );
+			createViewRoot( viewDocument, 'h1', 'header' );
 
 			expect( count( viewDocument.roots ) ).to.equal( 1 );
 
@@ -229,8 +229,8 @@ describe( 'Document', () => {
 		} );
 
 		it( 'should call observe on each root', () => {
-			createRoot( 'div', 'roo1', viewDocument );
-			createRoot( 'div', 'roo2', viewDocument );
+			createViewRoot( viewDocument, 'div', 'roo1' );
+			createViewRoot( viewDocument, 'div', 'roo2' );
 
 			viewDocument.attachDomRoot( document.createElement( 'div' ), 'roo1' );
 			viewDocument.attachDomRoot( document.createElement( 'div' ), 'roo2' );
@@ -271,7 +271,7 @@ describe( 'Document', () => {
 		} );
 
 		it( 'scrolls to the first range in selection with an offset', () => {
-			const root = createRoot( 'div', 'main', viewDocument );
+			const root = createViewRoot( viewDocument, 'div', 'main' );
 			const stub = testUtils.sinon.stub( global.window, 'scrollTo' );
 			const range = ViewRange.createIn( root );
 
@@ -340,7 +340,7 @@ describe( 'Document', () => {
 			domEditable = document.createElement( 'div' );
 			domEditable.setAttribute( 'contenteditable', 'true' );
 			document.body.appendChild( domEditable );
-			viewEditable = createRoot( 'div', 'main', viewDocument );
+			viewEditable = createViewRoot( viewDocument, 'div', 'main' );
 			viewDocument.attachDomRoot( domEditable );
 			viewDocument.selection.addRange( ViewRange.createFromParentsAndOffsets( viewEditable, 0, viewEditable, 0 ) );
 		} );
@@ -408,13 +408,3 @@ describe( 'Document', () => {
 		} );
 	} );
 } );
-
-function createRoot( name, rootName, viewDoc ) {
-	const viewRoot = new RootEditableElement( name );
-
-	viewRoot.rootName = rootName;
-	viewRoot.document = viewDoc;
-	viewDoc.roots.add( viewRoot );
-
-	return viewRoot;
-}

+ 2 - 12
packages/ckeditor5-engine/tests/view/document/jumpoverinlinefiller.js

@@ -5,11 +5,11 @@
 
 /* globals document */
 
-import RootEditableElement from '../../../src/view/rooteditableelement';
 import ViewRange from '../../../src/view/range';
 import ViewDocument from '../../../src/view/document';
 import { INLINE_FILLER_LENGTH, isInlineFiller, startsWithFiller } from '../../../src/view/filler';
 
+import createViewRoot from '../_utils/createroot';
 import { keyCodes } from '@ckeditor/ckeditor5-utils/src/keyboard';
 import createElement from '@ckeditor/ckeditor5-utils/src/dom/createelement';
 
@@ -25,7 +25,7 @@ describe( 'Document', () => {
 		document.body.appendChild( domRoot );
 
 		viewDocument = new ViewDocument();
-		createRoot( 'div', 'main', viewDocument );
+		createViewRoot( viewDocument );
 		viewDocument.attachDomRoot( domRoot );
 
 		document.getSelection().removeAllRanges();
@@ -135,13 +135,3 @@ describe( 'Document', () => {
 		} );
 	} );
 } );
-
-function createRoot( name, rootName, viewDoc ) {
-	const viewRoot = new RootEditableElement( name );
-
-	viewRoot.rootName = rootName;
-	viewRoot.document = viewDoc;
-	viewDoc.roots.add( viewRoot );
-
-	return viewRoot;
-}

+ 2 - 12
packages/ckeditor5-engine/tests/view/document/jumpoveruielement.js

@@ -7,13 +7,13 @@
 
 import ViewDocument from '../../../src/view/document';
 import UIElement from '../../../src/view/uielement';
-import RootEditableElement from '../../../src/view/rooteditableelement';
 import ViewContainerElement from '../../../src/view/containerelement';
 import ViewAttribtueElement from '../../../src/view/attributeelement';
 import ViewText from '../../../src/view/text';
 import ViewRange from '../../../src/view/range';
 import { keyCodes } from '@ckeditor/ckeditor5-utils/src/keyboard';
 import createElement from '@ckeditor/ckeditor5-utils/src/dom/createelement';
+import createViewRoot from '../_utils/createroot';
 import { setData as setViewData } from '../../../src/dev-utils/view';
 import testUtils from '@ckeditor/ckeditor5-core/tests/_utils/utils';
 
@@ -36,7 +36,7 @@ describe( 'Document', () => {
 		document.body.appendChild( domRoot );
 
 		viewDocument = new ViewDocument();
-		viewRoot = createRoot( 'div', 'main', viewDocument );
+		viewRoot = createViewRoot( viewDocument );
 		viewDocument.attachDomRoot( domRoot );
 
 		domSelection = document.getSelection();
@@ -82,16 +82,6 @@ describe( 'Document', () => {
 		}
 	}
 
-	function createRoot( name, rootName, viewDoc ) {
-		const viewRoot = new RootEditableElement( name );
-
-		viewRoot.rootName = rootName;
-		viewRoot.document = viewDoc;
-		viewDoc.roots.add( viewRoot );
-
-		return viewRoot;
-	}
-
 	describe( 'jump over ui element handler', () => {
 		describe( 'collapsed selection', () => {
 			it( 'do nothing when another key is pressed', () => {

+ 5 - 2
packages/ckeditor5-engine/tests/view/manual/clickobserver.js

@@ -7,6 +7,7 @@
 
 import Document from '../../../src/view/document';
 import DomEventObserver from '../../../src/view/observer/domeventobserver';
+import createViewRoot from '../_utils/createroot';
 
 const viewDocument = new Document();
 
@@ -45,8 +46,10 @@ document.getElementById( 'disable1' ).addEventListener( 'click', () => observer1
 // Random order.
 viewDocument.addObserver( ClickObserver1 );
 
-viewDocument.createRoot( document.getElementById( 'clickerA' ), 'clickerA' );
+createViewRoot( viewDocument, 'div', 'clickerA' );
+viewDocument.attachDomRoot( document.getElementById( 'clickerA' ), 'clickerA' );
 
 viewDocument.addObserver( ClickObserver2 );
 
-viewDocument.createRoot( document.getElementById( 'clickerB' ), 'clickerB' );
+createViewRoot( viewDocument, 'div', 'clickerB' );
+viewDocument.attachDomRoot( document.getElementById( 'clickerB' ), 'clickerB' );

+ 4 - 1
packages/ckeditor5-engine/tests/view/manual/fakeselection.js

@@ -8,13 +8,16 @@
 import ViewDocument from '../../../src/view/document';
 import DomEventObserver from '../../../src/view/observer/domeventobserver';
 import ViewRange from '../../../src/view/range';
+import createViewRoot from '../_utils/createroot';
 import { setData } from '../../../src/dev-utils/view';
 
 const viewDocument = new ViewDocument();
 const domEditable = document.getElementById( 'editor' );
-const viewRoot = viewDocument.createRoot( domEditable );
+const viewRoot = createViewRoot();
 let viewStrong;
 
+viewDocument.attachDomRoot( domEditable );
+
 // Add mouseup oberver.
 viewDocument.addObserver( class extends DomEventObserver {
 	get domEventType() {

+ 13 - 6
packages/ckeditor5-engine/tests/view/observer/domeventobserver.js

@@ -9,6 +9,7 @@ import DomEventObserver from '../../../src/view/observer/domeventobserver';
 import Observer from '../../../src/view/observer/observer';
 import ViewDocument from '../../../src/view/document';
 import UIElement from '../../../src/view/uielement';
+import createViewRoot from '../_utils/createroot';
 
 class ClickObserver extends DomEventObserver {
 	constructor( document ) {
@@ -66,7 +67,8 @@ describe( 'DomEventObserver', () => {
 		const domEvent = new MouseEvent( 'click' );
 		const evtSpy = sinon.spy();
 
-		viewDocument.createRoot( domElement, 'root' );
+		createViewRoot( viewDocument );
+		viewDocument.attachDomRoot( domElement );
 		viewDocument.addObserver( ClickObserver );
 		viewDocument.on( 'click', evtSpy );
 
@@ -88,7 +90,8 @@ describe( 'DomEventObserver', () => {
 		const evtSpy1 = sinon.spy();
 		const evtSpy2 = sinon.spy();
 
-		viewDocument.createRoot( domElement, 'root' );
+		createViewRoot( viewDocument );
+		viewDocument.attachDomRoot( domElement );
 		viewDocument.addObserver( MultiObserver );
 		viewDocument.on( 'evt1', evtSpy1 );
 		viewDocument.on( 'evt2', evtSpy2 );
@@ -105,7 +108,8 @@ describe( 'DomEventObserver', () => {
 		const domEvent = new MouseEvent( 'click' );
 		const evtSpy = sinon.spy();
 
-		viewDocument.createRoot( domElement, 'root' );
+		createViewRoot( viewDocument );
+		viewDocument.attachDomRoot( domElement );
 		const testObserver = viewDocument.addObserver( ClickObserver );
 		viewDocument.on( 'click', evtSpy );
 
@@ -121,7 +125,8 @@ describe( 'DomEventObserver', () => {
 		const domEvent = new MouseEvent( 'click' );
 		const evtSpy = sinon.spy();
 
-		viewDocument.createRoot( domElement, 'root' );
+		createViewRoot( viewDocument );
+		viewDocument.attachDomRoot( domElement );
 		const testObserver = viewDocument.addObserver( ClickObserver );
 		viewDocument.on( 'click', evtSpy );
 
@@ -143,7 +148,8 @@ describe( 'DomEventObserver', () => {
 		const childDomElement = document.createElement( 'p' );
 		const domEvent = new MouseEvent( 'click' );
 		domElement.appendChild( childDomElement );
-		viewDocument.createRoot( domElement, 'root' );
+		createViewRoot( viewDocument );
+		viewDocument.attachDomRoot( domElement );
 		viewDocument.addObserver( ClickCapturingObserver );
 
 		viewDocument.on( 'click', ( evt, domEventData ) => {
@@ -168,7 +174,8 @@ describe( 'DomEventObserver', () => {
 
 		beforeEach( () => {
 			domRoot = document.createElement( 'div' );
-			const viewRoot = viewDocument.createRoot( domRoot, 'root' );
+			const viewRoot = createViewRoot( viewDocument );
+			viewDocument.attachDomRoot( domRoot );
 			uiElement = new MyUIElement( 'p' );
 			viewRoot.appendChildren( uiElement );
 			viewDocument.render();

+ 3 - 1
packages/ckeditor5-engine/tests/view/observer/fakeselectionobserver.js

@@ -9,6 +9,7 @@ import createElement from '@ckeditor/ckeditor5-utils/src/dom/createelement';
 import FakeSelectionObserver from '../../../src/view/observer/fakeselectionobserver';
 import ViewDocument from '../../../src/view/document';
 import DomEventData from '../../../src/view/observer/domeventdata';
+import createViewRoot from '../_utils/createroot';
 import { keyCodes } from '@ckeditor/ckeditor5-utils/src/keyboard';
 import { setData, stringify } from '../../../src/dev-utils/view';
 
@@ -28,7 +29,8 @@ describe( 'FakeSelectionObserver', () => {
 
 	beforeEach( () => {
 		viewDocument = new ViewDocument();
-		root = viewDocument.createRoot( domRoot );
+		root = createViewRoot( viewDocument );
+		viewDocument.attachDomRoot( domRoot );
 		observer = viewDocument.getObserver( FakeSelectionObserver );
 		viewDocument.selection.setFake();
 	} );

+ 5 - 2
packages/ckeditor5-engine/tests/view/observer/focusobserver.js

@@ -7,6 +7,7 @@
 import FocusObserver from '../../../src/view/observer/focusobserver';
 import ViewDocument from '../../../src/view/document';
 import ViewRange from '../../../src/view/range';
+import createViewRoot from '../_utils/createroot';
 import { setData } from '../../../src/dev-utils/view';
 
 describe( 'FocusObserver', () => {
@@ -72,7 +73,8 @@ describe( 'FocusObserver', () => {
 			domMain = document.createElement( 'div' );
 			domHeader = document.createElement( 'h1' );
 
-			viewMain = viewDocument.createRoot( domMain );
+			viewMain = createViewRoot( viewDocument );
+			viewDocument.attachDomRoot( domMain );
 		} );
 
 		it( 'should set isFocused to true on focus', () => {
@@ -149,7 +151,8 @@ describe( 'FocusObserver', () => {
 			document.body.appendChild( domRoot );
 
 			viewDocument = new ViewDocument();
-			viewDocument.createRoot( domRoot );
+			createViewRoot( viewDocument );
+			viewDocument.attachDomRoot( domRoot );
 
 			observer = viewDocument.getObserver( FocusObserver );
 		} );

+ 7 - 3
packages/ckeditor5-engine/tests/view/observer/mutationobserver.js

@@ -8,6 +8,7 @@
 import ViewDocument from '../../../src/view/document';
 import MutationObserver from '../../../src/view/observer/mutationobserver';
 import UIElement from '../../../src/view/uielement';
+import createViewRoot from '../_utils/createroot';
 import { parse } from '../../../src/dev-utils/view';
 
 describe( 'MutationObserver', () => {
@@ -22,7 +23,8 @@ describe( 'MutationObserver', () => {
 		domEditor = document.getElementById( 'main' );
 		lastMutations = null;
 
-		viewDocument.createRoot( domEditor );
+		createViewRoot( viewDocument );
+		viewDocument.attachDomRoot( domEditor );
 		viewDocument.selection.removeAllRanges();
 		document.getSelection().removeAllRanges();
 
@@ -62,7 +64,8 @@ describe( 'MutationObserver', () => {
 	it( 'should not observe if disabled', () => {
 		const additional = document.getElementById( 'additional' );
 		mutationObserver.disable();
-		viewDocument.createRoot( additional, 'additional' );
+		createViewRoot( viewDocument, 'div', 'additional' );
+		viewDocument.attachDomRoot( additional, 'additional' );
 
 		additional.textContent = 'foobar';
 		mutationObserver.flush();
@@ -196,7 +199,8 @@ describe( 'MutationObserver', () => {
 		const domAdditionalEditor = document.getElementById( 'additional' );
 
 		// Prepare AdditionalEditor
-		viewDocument.createRoot( domAdditionalEditor, 'additional' );
+		createViewRoot( viewDocument, 'div', 'additional' );
+		viewDocument.attachDomRoot( domAdditionalEditor, 'additional' );
 
 		viewDocument.getRoot( 'additional' ).appendChildren(
 			parse( '<container:p>foo</container:p><container:p>bar</container:p>' ) );

+ 5 - 2
packages/ckeditor5-engine/tests/view/observer/selectionobserver.js

@@ -12,6 +12,7 @@ import ViewDocument from '../../../src/view/document';
 import SelectionObserver from '../../../src/view/observer/selectionobserver';
 import FocusObserver from '../../../src/view/observer/focusobserver';
 import log from '@ckeditor/ckeditor5-utils/src/log';
+import createViewRoot from '../_utils/createroot';
 import { parse } from '../../../src/dev-utils/view';
 
 testUtils.createSinonSandbox();
@@ -27,7 +28,8 @@ describe( 'SelectionObserver', () => {
 		domDocument.body.appendChild( domRoot );
 
 		viewDocument = new ViewDocument();
-		viewDocument.createRoot( domMain );
+		createViewRoot( viewDocument );
+		viewDocument.attachDomRoot( domMain );
 
 		selectionObserver = viewDocument.getObserver( SelectionObserver );
 
@@ -83,7 +85,8 @@ describe( 'SelectionObserver', () => {
 
 	it( 'should add only one listener to one document', done => {
 		// Add second roots to ensure that listener is added once.
-		viewDocument.createRoot( domDocument.getElementById( 'additional' ), 'additional' );
+		createViewRoot( viewDocument, 'div', 'additional' );
+		viewDocument.attachDomRoot( domDocument.getElementById( 'additional' ), 'additional' );
 
 		viewDocument.on( 'selectionChange', () => {
 			done();

+ 3 - 2
packages/ckeditor5-engine/tests/view/placeholder.js

@@ -4,6 +4,7 @@
  */
 
 import { attachPlaceholder, detachPlaceholder } from '../../src/view/placeholder';
+import createViewRoot from './_utils/createroot';
 import ViewContainerElement from '../../src/view/containerelement';
 import ViewDocument from '../../src/view/document';
 import ViewRange from '../../src/view/range';
@@ -14,7 +15,7 @@ describe( 'placeholder', () => {
 
 	beforeEach( () => {
 		viewDocument = new ViewDocument();
-		viewRoot = viewDocument.createRoot( 'main' );
+		viewRoot = createViewRoot( viewDocument );
 		viewDocument.isFocused = true;
 	} );
 
@@ -131,7 +132,7 @@ describe( 'placeholder', () => {
 			const element = viewRoot.getChild( 0 );
 			const secondDocument = new ViewDocument();
 			secondDocument.isFocused = true;
-			const secondRoot = secondDocument.createRoot( 'main' );
+			const secondRoot = createViewRoot( secondDocument );
 			setData( secondDocument, '<div></div><div>{another div}</div>' );
 			const secondElement = secondRoot.getChild( 0 );
 

+ 3 - 1
packages/ckeditor5-engine/tests/view/renderer.js

@@ -19,6 +19,7 @@ import CKEditorError from '@ckeditor/ckeditor5-utils/src/ckeditorerror';
 import { parse, setData as setViewData, getData as getViewData } from '../../src/dev-utils/view';
 import { INLINE_FILLER, INLINE_FILLER_LENGTH, isBlockFiller, BR_FILLER } from '../../src/view/filler';
 import testUtils from '@ckeditor/ckeditor5-core/tests/_utils/utils';
+import createViewRoot from './_utils/createroot';
 import createElement from '@ckeditor/ckeditor5-utils/src/dom/createelement';
 import { unwrap, insert, remove } from '../../src/view/writer';
 import normalizeHtml from '@ckeditor/ckeditor5-utils/tests/_utils/normalizehtml';
@@ -1880,7 +1881,8 @@ describe( 'Renderer', () => {
 			viewDoc = new ViewDocument();
 			domRoot = document.createElement( 'div' );
 			document.body.appendChild( domRoot );
-			viewRoot = viewDoc.createRoot( domRoot );
+			viewRoot = createViewRoot( viewDoc );
+			viewDoc.attachDomRoot( domRoot );
 			converter = viewDoc.domConverter;
 		} );
 

+ 2 - 1
packages/ckeditor5-engine/tests/view/selection.js

@@ -11,6 +11,7 @@ import Text from '../../src/view/text';
 import Position from '../../src/view/position';
 import CKEditorError from '@ckeditor/ckeditor5-utils/src/ckeditorerror';
 import count from '@ckeditor/ckeditor5-utils/src/count';
+import createViewRoot from './_utils/createroot';
 import { parse } from '../../src/dev-utils/view';
 
 describe( 'Selection', () => {
@@ -878,7 +879,7 @@ describe( 'Selection', () => {
 		it( 'should return EditableElement when selection is placed inside', () => {
 			const viewDocument = new Document();
 			const selection = viewDocument.selection;
-			const root = viewDocument.createRoot( 'div' );
+			const root = createViewRoot( viewDocument, 'div', 'main' );
 			const element = new Element( 'p' );
 			root.appendChildren( element );
 

+ 2 - 3
packages/ckeditor5-engine/tests/view/treewalker.js

@@ -3,8 +3,6 @@
  * For licensing, see LICENSE.md.
  */
 
-/* globals document */
-
 import Document from '../../src/view/document';
 import DocumentFragment from '../../src/view/documentfragment';
 import AttributeElement from '../../src/view/attributeelement';
@@ -13,6 +11,7 @@ import Text from '../../src/view/text';
 import TreeWalker from '../../src/view/treewalker';
 import Position from '../../src/view/position';
 import Range from '../../src/view/range';
+import createViewRoot from './_utils/createroot';
 import CKEditorError from '@ckeditor/ckeditor5-utils/src/ckeditorerror';
 
 describe( 'TreeWalker', () => {
@@ -20,7 +19,7 @@ describe( 'TreeWalker', () => {
 
 	before( () => {
 		doc = new Document();
-		root = doc.createRoot( document.createElement( 'div' ) );
+		root = createViewRoot( doc );
 
 		// root
 		//  |- img1