Test new maximum depth of multi-bulk replies

This commit is contained in:
Pieter Noordhuis 2012-08-27 23:47:38 -07:00
parent f7f022e4e0
commit 05d0608ab9
1 changed files with 7 additions and 5 deletions

12
test.c
View File

@ -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) {
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();
redisReaderFeed(reader,(char*)"*1\r\n",4);
redisReaderFeed(reader,(char*)"*1\r\n",4); 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); }
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);