Esanders has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/84749


Change subject: 'newFromDocumentInsertion' => 'newFromDocumentReplace'
......................................................................

'newFromDocumentInsertion' => 'newFromDocumentReplace'

Also rename 'nodeOrRange' to 'removeNodeOrRange' and document exception.

Change-Id: Ia777896ee7bd4f31bf01058f12e26d817fdf42d4
---
M modules/ve-mw/test/dm/ve.dm.Transaction.test.js
M modules/ve-mw/ui/dialogs/ve.ui.MWMediaEditDialog.js
M modules/ve-mw/ui/dialogs/ve.ui.MWReferenceDialog.js
M modules/ve/dm/ve.dm.Transaction.js
M modules/ve/test/dm/ve.dm.Transaction.test.js
5 files changed, 17 insertions(+), 15 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor 
refs/changes/49/84749/1

diff --git a/modules/ve-mw/test/dm/ve.dm.Transaction.test.js 
b/modules/ve-mw/test/dm/ve.dm.Transaction.test.js
index 79efb81..c38b7c1 100644
--- a/modules/ve-mw/test/dm/ve.dm.Transaction.test.js
+++ b/modules/ve-mw/test/dm/ve.dm.Transaction.test.js
@@ -8,7 +8,7 @@
 QUnit.module( 've.dm.Transaction' );
 
 // FIXME duplicates test runner; should be using a data provider
-QUnit.test( 'newFromDocumentInsertion with references', function ( assert ) {
+QUnit.test( 'newFromDocumentReplace with references', function ( assert ) {
        var i, j, doc2, tx, actualStoreItems, expectedStoreItems,
                doc = ve.dm.example.createExampleDocument( 'internalData' ),
                complexDoc = ve.dm.mwExample.createExampleDocument( 
'complexInternalData' ),
@@ -130,7 +130,7 @@
                                doc2 = doc.getDocumentSlice( cases[i].range );
                                cases[i].modify( doc2 );
                        }
-                       tx = ve.dm.Transaction.newFromDocumentInsertion( doc, 
cases[i].range, doc2 );
+                       tx = ve.dm.Transaction.newFromDocumentReplace( doc, 
cases[i].range, doc2 );
                        assert.deepEqualWithDomElements( tx.getOperations(), 
cases[i].expectedOps, cases[i].msg + ': transaction' );
 
                        actualStoreItems = [];
diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWMediaEditDialog.js 
b/modules/ve-mw/ui/dialogs/ve.ui.MWMediaEditDialog.js
index 284f940..956aada 100644
--- a/modules/ve-mw/ui/dialogs/ve.ui.MWMediaEditDialog.js
+++ b/modules/ve-mw/ui/dialogs/ve.ui.MWMediaEditDialog.js
@@ -132,12 +132,12 @@
                if ( this.captionNode ) {
                        // Replace the contents of the caption
                        surfaceModel.change(
-                               ve.dm.Transaction.newFromDocumentInsertion( 
doc, this.captionNode, newDoc )
+                               ve.dm.Transaction.newFromDocumentReplace( doc, 
this.captionNode, newDoc )
                        );
                } else {
                        // Insert a new caption at the beginning of the image 
node
                        // FIXME this doesn't handle metadata and internal 
items the way
-                       // newFromDocumentInsertion does
+                       // newFromDocumentReplace does
                        surfaceModel.getFragment()
                                .adjustRange( 1 )
                                .collapseRangeToStart()
diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWReferenceDialog.js 
b/modules/ve-mw/ui/dialogs/ve.ui.MWReferenceDialog.js
index 1c3d2b2..5aa1f6b 100644
--- a/modules/ve-mw/ui/dialogs/ve.ui.MWReferenceDialog.js
+++ b/modules/ve-mw/ui/dialogs/ve.ui.MWReferenceDialog.js
@@ -223,7 +223,7 @@
                        }
                        // Update internal node content
                        surfaceModel.change(
-                               ve.dm.Transaction.newFromDocumentInsertion(
+                               ve.dm.Transaction.newFromDocumentReplace(
                                        doc, internalList.getItemNode( 
this.ref.listIndex ), newDoc
                                )
                        );
@@ -239,7 +239,7 @@
                                        'listGroup': listGroup,
                                        'refGroup': refGroup
                                };
-                               // FIXME this doesn't handle metadata and 
internal items the way newFromDocumentInsertion does
+                               // FIXME this doesn't handle metadata and 
internal items the way newFromDocumentReplace does
                                item = internalList.getItemInsertion( 
this.ref.listGroup, this.ref.listKey, doc.getData() );
                                surfaceModel.change( item.transaction );
                                this.ref.listIndex = item.index;
diff --git a/modules/ve/dm/ve.dm.Transaction.js 
b/modules/ve/dm/ve.dm.Transaction.js
index bf294db..0d610c3 100644
--- a/modules/ve/dm/ve.dm.Transaction.js
+++ b/modules/ve/dm/ve.dm.Transaction.js
@@ -161,11 +161,12 @@
  * be resolved in newDoc's favor.
  *
  * @param {ve.dm.Document} doc Main document
- * @param {ve.Range|ve.dm.Node} nodeOrRange Node or range to replace
+ * @param {ve.Range|ve.dm.Node} removeNodeOrRange Node or range to remove
  * @param {ve.dm.Document} newDoc Document to insert
  * @returns {ve.dm.Transaction} Transaction that replaces the node and updates 
the internal list
+ * @throws {Error} removeNodeOrRange must be a ve.dm.Node or a ve.Range
  */
-ve.dm.Transaction.newFromDocumentInsertion = function ( doc, nodeOrRange, 
newDoc ) {
+ve.dm.Transaction.newFromDocumentReplace = function ( doc, removeNodeOrRange, 
newDoc ) {
        var i, len, range, merge, data, metadata, listData, listMetadata, 
oldEndOffset, newEndOffset,
                listNode = doc.internalList.getListNode(),
                listNodeRange = listNode.getRange(),
@@ -173,12 +174,13 @@
                newListNodeRange = newListNode.getRange(),
                newListNodeOuterRange = newListNode.getOuterRange(),
                tx = new ve.dm.Transaction();
-       if ( nodeOrRange instanceof ve.dm.Node ) {
-               range = nodeOrRange.getRange();
-       } else if ( nodeOrRange instanceof ve.Range ) {
-               range = nodeOrRange;
+
+       if ( removeNodeOrRange instanceof ve.dm.Node ) {
+               range = removeNodeOrRange.getRange();
+       } else if ( removeNodeOrRange instanceof ve.Range ) {
+               range = removeNodeOrRange;
        } else {
-               throw new Error( 'nodeOrRange must be a ve.dm.Node or a 
ve.Range' );
+               throw new Error( 'removeNodeOrRange must be a ve.dm.Node or a 
ve.Range' );
        }
 
        // Get the data and the metadata, but skip over the internal list
diff --git a/modules/ve/test/dm/ve.dm.Transaction.test.js 
b/modules/ve/test/dm/ve.dm.Transaction.test.js
index a82009a..19bd678 100644
--- a/modules/ve/test/dm/ve.dm.Transaction.test.js
+++ b/modules/ve/test/dm/ve.dm.Transaction.test.js
@@ -662,7 +662,7 @@
        runConstructorTests( assert, ve.dm.Transaction.newFromRemoval, cases );
 } );
 
-QUnit.test( 'newFromDocumentInsertion', function ( assert ) {
+QUnit.test( 'newFromDocumentReplace', function ( assert ) {
        var i, j, doc2, tx, actualStoreItems, expectedStoreItems,
                doc = ve.dm.example.createExampleDocument( 'internalData' ),
                nextIndex = doc.store.valueStore.length,
@@ -794,7 +794,7 @@
                        doc2 = doc.getDocumentSlice( cases[i].range );
                        cases[i].modify( doc2 );
                }
-               tx = ve.dm.Transaction.newFromDocumentInsertion( doc, 
cases[i].range, doc2 );
+               tx = ve.dm.Transaction.newFromDocumentReplace( doc, 
cases[i].range, doc2 );
                assert.deepEqualWithDomElements( tx.getOperations(), 
cases[i].expectedOps, cases[i].msg + ': transaction' );
 
                actualStoreItems = [];

-- 
To view, visit https://gerrit.wikimedia.org/r/84749
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia777896ee7bd4f31bf01058f12e26d817fdf42d4
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Esanders <esand...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to