|
|
@@ -43,7 +43,7 @@ describe( 'transform', () => {
|
|
|
expectClients( '<blockQuote><paragraph>Foo</paragraph></blockQuote>' );
|
|
|
} );
|
|
|
|
|
|
- it( 'intersecting wrap', () => {
|
|
|
+ it( 'intersecting wrap #1', () => {
|
|
|
john.setData( '[<paragraph>Foo</paragraph><paragraph>Bar</paragraph>]<paragraph>Abc</paragraph>' );
|
|
|
kate.setData( '<paragraph>Foo</paragraph>[<paragraph>Bar</paragraph><paragraph>Abc</paragraph>]' );
|
|
|
|
|
|
@@ -62,6 +62,68 @@ describe( 'transform', () => {
|
|
|
'</div>'
|
|
|
);
|
|
|
} );
|
|
|
+
|
|
|
+ it.skip( 'intersecting wrap #2', () => {
|
|
|
+ john.setData( '<paragraph>[Foo]</paragraph>' );
|
|
|
+ kate.setData( '<paragraph>F[o]o</paragraph>' );
|
|
|
+
|
|
|
+ john.wrap( 'div' );
|
|
|
+ kate.wrap( 'div' );
|
|
|
+
|
|
|
+ syncClients();
|
|
|
+
|
|
|
+ expectClients( '<paragraph><div>Foo</div></pragraph>');
|
|
|
+ } );
|
|
|
+
|
|
|
+ it.skip( 'intersecting wrap, then undo #1', () => {
|
|
|
+ john.setData( '[<paragraph>Foo</paragraph><paragraph>Bar</paragraph>]<paragraph>Abc</paragraph>' );
|
|
|
+ kate.setData( '<paragraph>Foo</paragraph>[<paragraph>Bar</paragraph><paragraph>Abc</paragraph>]' );
|
|
|
+
|
|
|
+ john.wrap( 'blockQuote' );
|
|
|
+ kate.wrap( 'div' );
|
|
|
+
|
|
|
+ syncClients();
|
|
|
+
|
|
|
+ john.undo();
|
|
|
+ kate.undo();
|
|
|
+
|
|
|
+ syncClients();
|
|
|
+
|
|
|
+ expectClients(
|
|
|
+ '<paragraph>Foo</paragraph>' +
|
|
|
+ '<paragraph>Bar</paragraph>' +
|
|
|
+ '<paragraph>Abc</paragraph>'
|
|
|
+ );
|
|
|
+ } );
|
|
|
+
|
|
|
+ it.skip( 'intersecting wrap, then undo #2', () => {
|
|
|
+ john.setData( '<paragraph>[Foo]</paragraph>' );
|
|
|
+ kate.setData( '<paragraph>F[o]o</paragraph>' );
|
|
|
+
|
|
|
+ john.wrap( 'div' );
|
|
|
+ kate.wrap( 'div' );
|
|
|
+
|
|
|
+ syncClients();
|
|
|
+
|
|
|
+ john.undo();
|
|
|
+ kate.undo();
|
|
|
+
|
|
|
+ syncClients();
|
|
|
+
|
|
|
+ expectClients( '<paragraph><div>Foo</div></pragraph>');
|
|
|
+ } );
|
|
|
+
|
|
|
+ it( 'element and text', () => {
|
|
|
+ john.setData( '[<paragraph>Foo</paragraph>]' );
|
|
|
+ kate.setData( '<paragraph>[Foo]</paragraph>' );
|
|
|
+
|
|
|
+ john.wrap( 'blockQuote' );
|
|
|
+ kate.wrap( 'div' );
|
|
|
+
|
|
|
+ syncClients();
|
|
|
+
|
|
|
+ expectClients( '<blockQuote><paragraph><div>Foo</div></paragraph></blockQuote>' );
|
|
|
+ } );
|
|
|
} );
|
|
|
|
|
|
describe( 'by unwrap', () => {
|
|
|
@@ -128,7 +190,7 @@ describe( 'transform', () => {
|
|
|
} );
|
|
|
|
|
|
describe( 'by merge', () => {
|
|
|
- it( 'element into paragraph', () => {
|
|
|
+ it( 'element into paragraph #1', () => {
|
|
|
john.setData( '[<paragraph>Foo</paragraph>]<paragraph>Bar</paragraph>' );
|
|
|
kate.setData( '<paragraph>Foo</paragraph>[]<paragraph>Bar</paragraph>' );
|
|
|
|
|
|
@@ -140,6 +202,23 @@ describe( 'transform', () => {
|
|
|
expectClients( '<blockQuote><paragraph>FooBar</paragraph></blockQuote>' );
|
|
|
} );
|
|
|
|
|
|
+ it( 'element into paragraph #2', () => {
|
|
|
+ john.setData( '<paragraph>[Foo]</paragraph><paragraph>Bar</paragraph>' );
|
|
|
+ kate.setData( '<paragraph>Foo</paragraph>[]<paragraph>Bar</paragraph>' );
|
|
|
+
|
|
|
+ john.wrap( 'div' );
|
|
|
+ kate.merge();
|
|
|
+
|
|
|
+ syncClients();
|
|
|
+
|
|
|
+ john.undo();
|
|
|
+ kate.undo();
|
|
|
+
|
|
|
+ syncClients();
|
|
|
+
|
|
|
+ expectClients( '<paragraph>Foo</paragraph><paragraph>Bar</paragraph>' );
|
|
|
+ } );
|
|
|
+
|
|
|
it.skip( 'element into paragraph, then undo', () => {
|
|
|
john.setData( '<paragraph>Foo</paragraph>[<paragraph>Bar</paragraph>]' );
|
|
|
kate.setData( '<paragraph>Foo</paragraph>[]<paragraph>Bar</paragraph>' );
|