You've already forked node-redis
mirror of
https://github.com/redis/node-redis.git
synced 2025-08-07 13:22:56 +03:00
Adding test for #457
This commit is contained in:
34
test.js
34
test.js
@@ -339,6 +339,40 @@ tests.MULTI_EXCEPTION_1 = function() {
|
||||
});
|
||||
};
|
||||
|
||||
tests.MULTI_8 = function () {
|
||||
var name = "MULTI_8", multi1, multi2;
|
||||
|
||||
// Provoke an error at queue time
|
||||
multi1 = client.multi();
|
||||
multi1.mset("multifoo_8", "10", "multibar_8", "20", require_string("OK", name));
|
||||
multi1.set("foo2", require_error(name));
|
||||
multi1.set("foo3", require_error(name));
|
||||
multi1.incr("multifoo_8", require_number(11, name));
|
||||
multi1.incr("multibar_8", require_number(21, name));
|
||||
multi1.exec(function () {
|
||||
require_error(name);
|
||||
|
||||
// Redis 2.6.5+ will abort transactions with errors
|
||||
// see: http://redis.io/topics/transactions
|
||||
var multibar_expected = 22;
|
||||
var multifoo_expected = 12;
|
||||
if (server_version_at_least(client, [2, 6, 5])) {
|
||||
multibar_expected = 1;
|
||||
multifoo_expected = 1;
|
||||
}
|
||||
|
||||
// Confirm that the previous command, while containing an error, still worked.
|
||||
multi2 = client.multi();
|
||||
multi2.incr("multibar_8", require_number(multibar_expected, name));
|
||||
multi2.incr("multifoo_8", require_number(multifoo_expected, name));
|
||||
multi2.exec(function (err, replies) {
|
||||
assert.strictEqual(multibar_expected, replies[0]);
|
||||
assert.strictEqual(multifoo_expected, replies[1]);
|
||||
next(name);
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
tests.FWD_ERRORS_1 = function () {
|
||||
var name = "FWD_ERRORS_1";
|
||||
|
||||
|
Reference in New Issue
Block a user