Commit Graph

121 Commits

Author SHA1 Message Date
mrb 52a29a124b increase read depth by one, would allow ruby redis client to read from slowlog 2011-12-02 08:45:13 -05:00
Pieter Noordhuis b52193977e Colorize test outcome 2011-07-10 17:36:07 +02:00
Pieter Noordhuis dad240f0a3 Test all supported types for printf-like formatting 2011-07-10 17:25:55 +02:00
Pieter Noordhuis 2da784ce8f Abort on invalid format
There is no way we can guess the width of the argument when we cannot
infer its type from the format specifier.
2011-07-09 15:08:45 +02:00
Pieter Noordhuis 4ac55be9b5 Update printf-formatting tests to fail 2011-07-09 15:08:45 +02:00
Pieter Noordhuis 375ba48eea Revert "Add function to retrieve formatted reply"
This reverts commit 77540aa316. The change
in buffer strategy is too large to put in a minor release. It is put in
a separate branch in the meantime, so it can be refined and released
together with a minor version bump.
2011-06-19 13:41:25 +02:00
Pieter Noordhuis 367ac44ac1 Remove private feature macros for Solaris from compiler flags 2011-06-18 16:28:57 +02:00
Pieter Noordhuis e0d5c71277 Fix compiler warnings 2011-06-18 12:29:49 +02:00
Pieter Noordhuis 5f5b3d9787 Fix for issue #45 2011-06-09 09:25:09 +02:00
Pieter Noordhuis 159a83ab8a Flag to disable throughput tests 2011-06-09 09:16:31 +02:00
Pieter Noordhuis 7a8de1fe25 Exit with a non-zero status when tests failed 2011-05-29 10:03:39 -07:00
Pieter Noordhuis 9723a4fc46 More control over host/port and unix path in test.c 2011-05-22 16:26:04 +02:00
Piotr Sikora 5793b999a9 Add "make check" target (useful for automated tests).
While there, add "-p" option to "hiredis-test", so that we could run
tests without interrupting Redis instance running on the default port.
2011-05-22 15:24:11 +02:00
Pieter Noordhuis 77540aa316 Add function to retrieve formatted reply
This is done by only truncating the read buffer once a full reply has
been read. The buffer is no longer truncated halfway through reading a
reply. In addition: pass offset/length of protocol and content via the
read tasks.
2011-05-05 17:01:34 +02:00
Pieter Noordhuis 19709152f2 Reflect rename in tests 2011-04-21 16:03:54 +02:00
Pieter Noordhuis 6d207ea98e Create protocol reader when creating context 2011-04-21 15:04:42 +02:00
Pieter Noordhuis fc790ebea6 State should not be reset after protocol error 2011-04-21 10:54:54 +02:00
Pieter Noordhuis 178024244d Use variable for throughput test iteration count 2011-04-19 23:03:29 +02:00
Pieter Noordhuis b4f85484ea Add pipelined throughput tests 2011-03-31 12:41:46 +02:00
Pieter Noordhuis 8e2c39200d Fix formatCommand to work with all empty interpolations 2011-03-06 11:38:07 +01:00
Pieter Noordhuis 663d6d1258 Properly reset state after protocol error in reply reader 2011-01-27 14:39:34 +01:00
Pieter Noordhuis fbe756d838 Avoid warnings with -Wstrict-prototypes 2011-01-27 12:50:55 +01:00
Pieter Noordhuis 43ab0f8018 Return error on socket timeout for a blocking context 2011-01-07 13:04:42 +01:00
Pieter Noordhuis 7684d556bd Add (nearly) full printf support by delegating to vsprintf 2010-12-02 16:20:55 +01:00
Pieter Noordhuis 257a9d40a9 Set error on unexpected nesting of multi bulks 2010-11-24 15:46:05 +01:00
Pieter Noordhuis b6b96f776e Make error messages consistent in casing 2010-11-22 10:37:14 +01:00
Pieter Noordhuis 537e64e946 Tests for behavior when connecting fails 2010-11-22 10:32:37 +01:00
Pieter Noordhuis 7c33f2666b Make test for formatting commands using a vector more robust 2010-11-22 10:06:43 +01:00
Pieter Noordhuis cb89a472b6 Fix formatting literal percent characters 2010-11-22 10:00:45 +01:00
Pieter Noordhuis 9d9b8e1c79 Correctly format commands with empty interpolated values 2010-11-22 09:55:54 +01:00
Pieter Noordhuis 650df0f982 Don't do a write(2) after QUIT
This causes non-deterministic error messages because sometimes the
socket will already be closed and sometimes it is yet to be closed.
2010-11-19 12:37:06 +01:00
Pieter Noordhuis 0b27639e09 Don't print when testing can continue 2010-11-15 20:17:31 +01:00
Pieter Noordhuis a5acb58948 Redis >=2.1 replies with OK on QUIT, so make the test conditional 2010-11-15 20:16:01 +01:00
Pieter Noordhuis 1c39483434 Include signal.h 2010-11-05 17:24:11 +01:00
Pieter Noordhuis 8ce0b3228d Finding \r\n without strstr is a little harder 2010-11-04 23:52:47 +01:00
Pieter Noordhuis 2e5e9a49fd Return the reply type when the reply object function set is NULL 2010-11-04 13:15:44 +01:00
Pieter Noordhuis bea6c4bde2 Check replies in throughput test 2010-11-03 11:43:01 +01:00
Pieter Noordhuis f25a5267cc Allow to connect using a unix socket from hiredis 2010-11-03 11:38:26 +01:00
Pieter Noordhuis ffa8666a64 Change error reporting to have an explicit type
When there is an I/O error, errno should be used to find out what is
wrong. In other cases, errno cannot be used. So, use an explicit type in
Hiredis to define the different error scenarios that can occur.
2010-11-02 16:36:38 +01:00
Pieter Noordhuis f463734e91 Remove reply object functions from connect functions 2010-10-31 12:53:57 +01:00
Pieter Noordhuis 298e9325d7 First step in decoupling reply callbacks from internals 2010-10-31 10:56:24 +01:00
Pieter Noordhuis a3a405bcba Format a command using an argument vector 2010-10-31 10:34:29 +01:00
Pieter Noordhuis bc5dcdbc85 Status replies should have type REDIS_REPLY_STATUS 2010-10-30 17:49:39 +02:00
Pieter Noordhuis 171b5a24d4 Drop dependency on sds.h for exposed API 2010-10-30 17:47:19 +02:00
Pieter Noordhuis 0f745d1ac0 Run pending callbacks with NULL reply on redisDisconnect() 2010-10-19 21:26:06 +02:00
Pieter Noordhuis bbe007a75a Test helper for creating a non-blocking connection 2010-10-19 21:24:30 +02:00
Pieter Noordhuis d4b4a9128e Revert e5dd32d8 that added the const qualifier for command callbacks 2010-10-19 21:24:30 +02:00
Pieter Noordhuis ba42ab2ef8 Revert privdata in context callbacks to being non-const 2010-10-19 14:19:51 +02:00
Pieter Noordhuis f9596db90b Test callback sequence in non-blocking context 2010-10-18 16:27:52 +02:00
Pieter Noordhuis e332a32b35 Change redisWriteBuffer to return OK on an empty buffer 2010-10-18 15:49:52 +02:00
Pieter Noordhuis a68cb9686e Tests for context callbacks in non-blocking mode 2010-10-18 15:39:56 +02:00
Pieter Noordhuis 634314f386 Rearrange tests to isolated functions 2010-10-18 14:51:03 +02:00
Pieter Noordhuis 7496458c68 The QUIT commands returns OK on master 2010-10-18 12:01:17 +02:00
Pieter Noordhuis 5c7b5fca4d Make error messages more consistent (e.g. no newline) 2010-10-06 21:23:03 +02:00
Pieter Noordhuis 1a5f111d52 c->error is no longer a redisReply object, but rather a plain C-string 2010-10-06 21:10:09 +02:00
Pieter Noordhuis 8345467b2e Free the replies after the tests are done 2010-09-25 15:33:46 +02:00
Pieter Noordhuis 9e417047ed Add function to free an allocated context 2010-09-25 15:33:27 +02:00
Pieter Noordhuis a7d7618141 Deprecate the error object for I/O and protocol errors
Rather, use the return value REDIS_OK and REDIS_ERR to designate if
calling a function has a successful outcome. When there was an error in
performing the call the error field will be set inside the reader or the
context.
2010-09-25 15:09:13 +02:00
Pieter Noordhuis d156550886 Rename fd to the more appropriate c 2010-09-24 18:48:07 +02:00
Pieter Noordhuis 817d26b81d Use context variable to keep state for a connection
The context supports both blocking and non-blocking connections. All
read and write events are not handled by hiredis, but hiredis exposes an
API for buffered reading/writing to Redis.
2010-09-24 18:42:22 +02:00
Pieter Noordhuis af8ba74cbf Rename functions to be more consistent, split feed from get reply 2010-09-21 11:39:18 +02:00
Pieter Noordhuis b1bedf5c6d Use a set of function pointers for building the reply
Allows libraries to wrap the reply parsing code and build the reply in a
streaming fashion. Reply objects can immediately be initialized to the
required type without having to convert an intermediary format.
2010-09-20 22:04:35 +02:00
Pieter Noordhuis e944ea3662 Add reply type for protocol errors, in order to never exit() 2010-09-20 14:05:23 +02:00
Pieter Noordhuis aec1fbd2ad Use automatic numbering in tests 2010-09-20 13:44:24 +02:00
Pieter Noordhuis 4ec97f5907 Free reply in test.c to make hiredis-test run cleanly on Valgrind 2010-09-19 20:43:57 +02:00
Pieter Noordhuis f87625777d Change function prototype 2010-09-19 20:43:43 +02:00
Pieter Noordhuis 62c8054dbe Clean up when there is an I/O error 2010-09-19 19:01:31 +02:00
Pieter Noordhuis 457cdbf7c5 Rewrite reply parsing to use a read buffer 2010-09-19 18:47:05 +02:00
Pieter Noordhuis 66036d113e Add speed tests 2010-09-19 15:18:51 +02:00
Pierre Riteau 7302a5ec69 strcasecmp requires strings.h 2010-05-25 14:02:44 +02:00
antirez bd4ec57059 minimalistic test suite... 2010-05-18 20:12:03 +02:00