Divec has uploaded a new change for review.
https://gerrit.wikimedia.org/r/317373
Change subject: ve.dm.Transaction: add 'author' field
......................................................................
ve.dm.Transaction: add 'author' field
Also remove toJSON method, as it is no longer needed
Change-Id: Icfbd542d0c66ecc656bd734d1d1fb44dd1869d90
---
M src/dm/ve.dm.Transaction.js
M tests/dm/ve.dm.Transaction.test.js
2 files changed, 7 insertions(+), 13 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/VisualEditor/VisualEditor
refs/changes/73/317373/1
diff --git a/src/dm/ve.dm.Transaction.js b/src/dm/ve.dm.Transaction.js
index 1b25e82..05f10af 100644
--- a/src/dm/ve.dm.Transaction.js
+++ b/src/dm/ve.dm.Transaction.js
@@ -25,6 +25,7 @@
ve.dm.Transaction = function VeDmTransaction( operations ) {
this.operations = operations || [];
this.applied = false;
+ this.author = null;
};
/* Static Methods */
@@ -904,15 +905,6 @@
/* Methods */
/**
- * Get a serializable object describing the transaction
- *
- * @return {Object} Serializable object
- */
-ve.dm.Transaction.prototype.toJSON = function () {
- return this.operations;
-};
-
-/**
* Get a human-readable summary
*
* @return {string} Human-readable summary
@@ -932,7 +924,7 @@
}
} ).join( '' ) + '\'';
}
- return '(' + this.operations.map( function ( op ) {
+ return '(' + this.author + ' ' + this.operations.map( function ( op ) {
if ( op.type === 'retain' ) {
return ( annotations ? 'annotate ' : 'retain ' ) +
op.length;
} else if ( op.type === 'replace' ) {
@@ -970,6 +962,7 @@
ve.dm.Transaction.prototype.clone = function () {
var tx = new this.constructor();
tx.operations = ve.copy( this.operations );
+ tx.author = this.author;
return tx;
};
@@ -997,6 +990,7 @@
}
tx.operations.push( newOp );
}
+ tx.author = this.author;
return tx;
};
diff --git a/tests/dm/ve.dm.Transaction.test.js
b/tests/dm/ve.dm.Transaction.test.js
index 8d1b295..d16c7b1 100644
--- a/tests/dm/ve.dm.Transaction.test.js
+++ b/tests/dm/ve.dm.Transaction.test.js
@@ -2464,7 +2464,7 @@
} );
} );
-QUnit.test( 'toJSON/build with operations', function ( assert ) {
+QUnit.test( 'operations/build from operations', function ( assert ) {
var i, tx, ops,
doc = ve.dm.example.createExampleDocument(),
underline = ve.dm.example.createAnnotation(
ve.dm.example.underline ),
@@ -2545,8 +2545,8 @@
for ( i = 0; i < cases.length; i++ ) {
tx = ve.dm.Transaction[ cases[ i ].method ].apply(
ve.dm.Transaction, cases[ i ].args );
- ops = JSON.parse( JSON.stringify( tx.toJSON() ) );
- assert.deepEqual( ops, cases[ i ].expected, cases[ i ].msg + ':
toJSON' );
+ ops = ve.copy( tx.operations );
+ assert.deepEqual( ops, cases[ i ].expected, cases[ i ].msg + ':
operations' );
if ( cases[ i ].roundTripArgs ) {
tx = ve.dm.Transaction[ cases[ i ].method ].apply(
ve.dm.Transaction, cases[ i ].roundTripArgs );
}
--
To view, visit https://gerrit.wikimedia.org/r/317373
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Icfbd542d0c66ecc656bd734d1d1fb44dd1869d90
Gerrit-PatchSet: 1
Gerrit-Project: VisualEditor/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Divec <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits