Make the test compatible with latest juggler
This commit is contained in:
parent
28a0537e81
commit
20c9695591
|
@ -294,11 +294,22 @@ describe('Replication / Change APIs', function() {
|
||||||
},
|
},
|
||||||
function replicateWith3rdPartyModifyingData(next) {
|
function replicateWith3rdPartyModifyingData(next) {
|
||||||
setupRaceConditionInReplication(function(cb) {
|
setupRaceConditionInReplication(function(cb) {
|
||||||
TargetModel.dataSource.connector.updateAttributes(
|
var connector = TargetModel.dataSource.connector;
|
||||||
TargetModel.modelName,
|
if (connector.updateAttributes.length <= 4) {
|
||||||
'1',
|
connector.updateAttributes(
|
||||||
{ name: '3rd-party' },
|
TargetModel.modelName,
|
||||||
cb);
|
'1',
|
||||||
|
{name: '3rd-party'},
|
||||||
|
cb);
|
||||||
|
} else {
|
||||||
|
// 2.x connectors require `options`
|
||||||
|
connector.updateAttributes(
|
||||||
|
TargetModel.modelName,
|
||||||
|
'1',
|
||||||
|
{name: '3rd-party'},
|
||||||
|
{}, // options
|
||||||
|
cb);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
SourceModel.replicate(
|
SourceModel.replicate(
|
||||||
|
@ -325,11 +336,21 @@ describe('Replication / Change APIs', function() {
|
||||||
// of UPDATE is fixed to correctly remove properties
|
// of UPDATE is fixed to correctly remove properties
|
||||||
createModel(SourceModel, { id: '1', name: 'source' }),
|
createModel(SourceModel, { id: '1', name: 'source' }),
|
||||||
function replicateWith3rdPartyModifyingData(next) {
|
function replicateWith3rdPartyModifyingData(next) {
|
||||||
|
var connector = TargetModel.dataSource.connector;
|
||||||
setupRaceConditionInReplication(function(cb) {
|
setupRaceConditionInReplication(function(cb) {
|
||||||
TargetModel.dataSource.connector.create(
|
if (connector.create.length <= 3) {
|
||||||
TargetModel.modelName,
|
connector.create(
|
||||||
{ id: '1', name: '3rd-party' },
|
TargetModel.modelName,
|
||||||
cb);
|
{id: '1', name: '3rd-party'},
|
||||||
|
cb);
|
||||||
|
} else {
|
||||||
|
// 2.x connectors require `options`
|
||||||
|
connector.create(
|
||||||
|
TargetModel.modelName,
|
||||||
|
{id: '1', name: '3rd-party'},
|
||||||
|
{}, // options
|
||||||
|
cb);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
SourceModel.replicate(
|
SourceModel.replicate(
|
||||||
|
@ -359,11 +380,22 @@ describe('Replication / Change APIs', function() {
|
||||||
},
|
},
|
||||||
function replicateWith3rdPartyModifyingData(next) {
|
function replicateWith3rdPartyModifyingData(next) {
|
||||||
setupRaceConditionInReplication(function(cb) {
|
setupRaceConditionInReplication(function(cb) {
|
||||||
TargetModel.dataSource.connector.updateAttributes(
|
var connector = TargetModel.dataSource.connector;
|
||||||
TargetModel.modelName,
|
if (connector.updateAttributes.length <= 4) {
|
||||||
'1',
|
connector.updateAttributes(
|
||||||
{ name: '3rd-party' },
|
TargetModel.modelName,
|
||||||
cb);
|
'1',
|
||||||
|
{name: '3rd-party'},
|
||||||
|
cb);
|
||||||
|
} else {
|
||||||
|
// 2.x connectors require `options`
|
||||||
|
connector.updateAttributes(
|
||||||
|
TargetModel.modelName,
|
||||||
|
'1',
|
||||||
|
{name: '3rd-party'},
|
||||||
|
{}, // options
|
||||||
|
cb);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
SourceModel.replicate(
|
SourceModel.replicate(
|
||||||
|
@ -392,11 +424,21 @@ describe('Replication / Change APIs', function() {
|
||||||
SourceModel.deleteById('1', next);
|
SourceModel.deleteById('1', next);
|
||||||
},
|
},
|
||||||
function setup3rdPartyModifyingData(next) {
|
function setup3rdPartyModifyingData(next) {
|
||||||
|
var connector = TargetModel.dataSource.connector;
|
||||||
setupRaceConditionInReplication(function(cb) {
|
setupRaceConditionInReplication(function(cb) {
|
||||||
TargetModel.dataSource.connector.destroy(
|
if (connector.destroy.length <= 3) {
|
||||||
TargetModel.modelName,
|
connector.destroy(
|
||||||
'1',
|
TargetModel.modelName,
|
||||||
cb);
|
'1',
|
||||||
|
cb);
|
||||||
|
} else {
|
||||||
|
// 2.x connectors require `options`
|
||||||
|
connector.destroy(
|
||||||
|
TargetModel.modelName,
|
||||||
|
'1',
|
||||||
|
{}, // options
|
||||||
|
cb);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
next();
|
next();
|
||||||
},
|
},
|
||||||
|
@ -681,13 +723,24 @@ describe('Replication / Change APIs', function() {
|
||||||
// make sure we bypass find+create and call the connector directly
|
// make sure we bypass find+create and call the connector directly
|
||||||
SourceModel.dataSource.connector.findOrCreate =
|
SourceModel.dataSource.connector.findOrCreate =
|
||||||
function(model, query, data, callback) {
|
function(model, query, data, callback) {
|
||||||
this.all(model, query, function(err, list) {
|
if (this.all.length <= 3) {
|
||||||
if (err || (list && list[0]))
|
this.all(model, query, function(err, list) {
|
||||||
return callback(err, list && list[0], false);
|
if (err || (list && list[0]))
|
||||||
this.create(model, data, function(err) {
|
return callback(err, list && list[0], false);
|
||||||
callback(err, data, true);
|
this.create(model, data, function(err) {
|
||||||
});
|
callback(err, data, true);
|
||||||
}.bind(this));
|
});
|
||||||
|
}.bind(this));
|
||||||
|
} else {
|
||||||
|
// 2.x connectors requires `options`
|
||||||
|
this.all(model, query, {}, function(err, list) {
|
||||||
|
if (err || (list && list[0]))
|
||||||
|
return callback(err, list && list[0], false);
|
||||||
|
this.create(model, data, {}, function(err) {
|
||||||
|
callback(err, data, true);
|
||||||
|
});
|
||||||
|
}.bind(this));
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
SourceModel.findOrCreate(
|
SourceModel.findOrCreate(
|
||||||
|
|
Loading…
Reference in New Issue