Commit 05d0608a authored by Pieter Noordhuis's avatar Pieter Noordhuis
Browse files

Test new maximum depth of multi-bulk replies

parent f7f022e4
...@@ -204,6 +204,7 @@ static void test_reply_reader(void) { ...@@ -204,6 +204,7 @@ static void test_reply_reader(void) {
redisReader *reader; redisReader *reader;
void *reply; void *reply;
int ret; int ret;
int i;
test("Error handling in reply parser: "); test("Error handling in reply parser: ");
reader = redisReaderCreate(); reader = redisReaderCreate();
...@@ -225,12 +226,13 @@ static void test_reply_reader(void) { ...@@ -225,12 +226,13 @@ static void test_reply_reader(void) {
strcasecmp(reader->errstr,"Protocol error, got \"@\" as reply type byte") == 0); strcasecmp(reader->errstr,"Protocol error, got \"@\" as reply type byte") == 0);
redisReaderFree(reader); redisReaderFree(reader);
test("Set error on nested multi bulks with depth > 2: "); test("Set error on nested multi bulks with depth > 7: ");
reader = redisReaderCreate(); reader = redisReaderCreate();
for (i = 0; i < 9; i++) {
redisReaderFeed(reader,(char*)"*1\r\n",4); redisReaderFeed(reader,(char*)"*1\r\n",4);
redisReaderFeed(reader,(char*)"*1\r\n",4); }
redisReaderFeed(reader,(char*)"*1\r\n",4);
redisReaderFeed(reader,(char*)"*1\r\n",4);
ret = redisReaderGetReply(reader,NULL); ret = redisReaderGetReply(reader,NULL);
test_cond(ret == REDIS_ERR && test_cond(ret == REDIS_ERR &&
strncasecmp(reader->errstr,"No support for",14) == 0); strncasecmp(reader->errstr,"No support for",14) == 0);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment