1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-06 02:15:48 +03:00

Don't throw on invalid data types but throw a warning instead

Fixes #1013
This commit is contained in:
Ruben Bridgewater
2016-03-21 17:15:12 +01:00
parent ddbb94b598
commit db6cf0a3b5
2 changed files with 19 additions and 12 deletions

View File

@@ -45,22 +45,22 @@ describe("The 'hset' method", function () {
});
});
it('throws a error if someone passed a array either as field or as value', function (done) {
it('warns if someone passed a array either as field or as value', function (done) {
var hash = "test hash";
var field = "array";
// This would be converted to "array contents" but if you use more than one entry,
// it'll result in e.g. "array contents,second content" and this is not supported and considered harmful
var value = ["array contents"];
try {
client.HMSET(hash, field, value);
throw new Error('test failed');
} catch (err) {
if (/invalid data/.test(err.message)) {
done();
} else {
done(err);
}
}
client.on('warning', function (msg) {
assert.strictEqual(
msg,
'Deprecated: The HMSET command contains a argument of type Array.\n' +
'This is converted to "array contents" by using .toString() now and will return an error from v.3.0 on.\n' +
'Please handle this in your code to make sure everything works as you intended it to.'
);
done();
});
client.HMSET(hash, field, value);
});
it('does not error when a buffer and date are set as values on the same hash', function (done) {