Adding transaction tests

This commit is contained in:
Nicolas Dextraze
2016-03-18 14:04:07 -07:00
parent a64dbc9b8e
commit b2504749ce
12 changed files with 626 additions and 351 deletions

View File

@ -33,13 +33,13 @@ EventStoreTransaction.prototype.commit = function() {
/**
* Write events (async)
* @param {Array.<EventData>} events
* @param {EventData|EventData[]} eventOrEvents
* @returns {Promise}
*/
EventStoreTransaction.prototype.write = function(events) {
EventStoreTransaction.prototype.write = function(eventOrEvents) {
if (this._isRolledBack) throw new Error("can't write to a rolledback transaction");
if (this._isCommitted) throw new Error("Transaction is already committed");
if (!Array.isArray(events)) throw new Error("events must be an array.");
var events = Array.isArray(eventOrEvents) ? eventOrEvents : [eventOrEvents];
return this._connection.transactionalWrite(this, events);
};