1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-09 00:22:08 +03:00

Add failing test.

The test demonstrates failure for the following scenario. A single-subscription
client calls unsubscribe immediately followed by a subscribe. It will fail when
it tries to receive the next pmessage/message because the client will be in
false pub_sub_mode. Here is why it is false: First, the 2nd subscribe sets
pub_sub_mode to true during send_command. Next, the unsubscribe's
return_reply sets pub_sub_mode to false. The 2nd subscribe's return_reply does
not re-set pub_sub_mode back to true. So the result is a client with false
pub_sub_mode that fails upon receipt of the next message or pmessage.
This commit is contained in:
Brian Noguchi
2012-03-12 22:59:38 -07:00
parent 5a5af9a4f9
commit 2afa0e5acc

14
tests/re_sub_test.js Normal file
View File

@@ -0,0 +1,14 @@
var client = require('../index').createClient()
, client2 = require('../index').createClient()
, assert = require('assert');
client.once('subscribe', function (channel, count) {
client.unsubscribe('x');
client.subscribe('x', function () {
client.quit();
client2.quit();
});
client2.publish('x', 'hi');
});
client.subscribe('x');