Browse Source

Adding test for #457

gh-pages
Bryce Baril 11 years ago
parent
commit
c1926cd27c
  1. 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";

Loading…
Cancel
Save