Lines Matching refs:ctx
51 int TestCall(RedisModuleCtx *ctx, RedisModuleString **argv, int argc) { in TestCall() argument
55 RedisModule_AutoMemory(ctx); in TestCall()
58 RedisModule_Call(ctx,"DEL","c","mylist"); in TestCall()
59 RedisModuleString *mystr = RedisModule_CreateString(ctx,"foo",3); in TestCall()
60 RedisModule_Call(ctx,"RPUSH","csl","mylist",mystr,(long long)1234); in TestCall()
61 reply = RedisModule_Call(ctx,"LRANGE","ccc","mylist","0","-1"); in TestCall()
72 RedisModule_ReplyWithSimpleString(ctx,"OK"); in TestCall()
76 RedisModule_ReplyWithSimpleString(ctx,"ERR"); in TestCall()
81 int TestStringAppend(RedisModuleCtx *ctx, RedisModuleString **argv, int argc) { in TestStringAppend() argument
85 RedisModuleString *s = RedisModule_CreateString(ctx,"foo",3); in TestStringAppend()
86 RedisModule_StringAppendBuffer(ctx,s,"bar",3); in TestStringAppend()
87 RedisModule_ReplyWithString(ctx,s); in TestStringAppend()
88 RedisModule_FreeString(ctx,s); in TestStringAppend()
93 int TestStringAppendAM(RedisModuleCtx *ctx, RedisModuleString **argv, int argc) { in TestStringAppendAM() argument
97 RedisModule_AutoMemory(ctx); in TestStringAppendAM()
98 RedisModuleString *s = RedisModule_CreateString(ctx,"foo",3); in TestStringAppendAM()
99 RedisModule_RetainString(ctx,s); in TestStringAppendAM()
100 RedisModule_StringAppendBuffer(ctx,s,"bar",3); in TestStringAppendAM()
101 RedisModule_ReplyWithString(ctx,s); in TestStringAppendAM()
102 RedisModule_FreeString(ctx,s); in TestStringAppendAM()
107 int TestStringPrintf(RedisModuleCtx *ctx, RedisModuleString **argv, int argc) { in TestStringPrintf() argument
108 RedisModule_AutoMemory(ctx); in TestStringPrintf()
110 return RedisModule_WrongArity(ctx); in TestStringPrintf()
112 RedisModuleString *s = RedisModule_CreateStringPrintf(ctx, in TestStringPrintf()
119 RedisModule_ReplyWithString(ctx,s); in TestStringPrintf()
124 int failTest(RedisModuleCtx *ctx, const char *msg) { in failTest() argument
125 RedisModule_ReplyWithError(ctx, msg); in failTest()
129 int TestUnlink(RedisModuleCtx *ctx, RedisModuleString **argv, int argc) { in TestUnlink() argument
130 RedisModule_AutoMemory(ctx); in TestUnlink()
134 …RedisModuleKey *k = RedisModule_OpenKey(ctx, RedisModule_CreateStringPrintf(ctx, "unlinked"), REDI… in TestUnlink()
135 if (!k) return failTest(ctx, "Could not create key"); in TestUnlink()
137 … if (REDISMODULE_ERR == RedisModule_StringSet(k, RedisModule_CreateStringPrintf(ctx, "Foobar"))) { in TestUnlink()
138 return failTest(ctx, "Could not set string value"); in TestUnlink()
141 RedisModuleCallReply *rep = RedisModule_Call(ctx, "EXISTS", "c", "unlinked"); in TestUnlink()
143 return failTest(ctx, "Key does not exist before unlink"); in TestUnlink()
147 return failTest(ctx, "Could not unlink key"); in TestUnlink()
150 rep = RedisModule_Call(ctx, "EXISTS", "c", "unlinked"); in TestUnlink()
152 return failTest(ctx, "Could not verify key to be unlinked"); in TestUnlink()
154 return RedisModule_ReplyWithSimpleString(ctx, "OK"); in TestUnlink()
158 int NotifyCallback(RedisModuleCtx *ctx, int type, const char *event, in NotifyCallback() argument
162 RedisModule_Log(ctx, "notice", "Got event type %d, event %s, key %s", type, in NotifyCallback()
165 RedisModule_Call(ctx, "HINCRBY", "csc", "notifications", key, "1"); in NotifyCallback()
170 int TestNotifications(RedisModuleCtx *ctx, RedisModuleString **argv, int argc) { in TestNotifications() argument
176 RedisModule_Log(ctx, "warning", "Failed NOTIFY Test. Reason: " #msg, ##__VA_ARGS__); \ in TestNotifications()
179 RedisModule_Call(ctx, "FLUSHDB", ""); in TestNotifications()
181 RedisModule_Call(ctx, "SET", "cc", "foo", "bar"); in TestNotifications()
182 RedisModule_Call(ctx, "SET", "cc", "foo", "baz"); in TestNotifications()
183 RedisModule_Call(ctx, "SADD", "cc", "bar", "x"); in TestNotifications()
184 RedisModule_Call(ctx, "SADD", "cc", "bar", "y"); in TestNotifications()
186 RedisModule_Call(ctx, "HSET", "ccc", "baz", "x", "y"); in TestNotifications()
188 RedisModule_Call(ctx, "LPUSH", "cc", "l", "y"); in TestNotifications()
189 RedisModule_Call(ctx, "LPUSH", "cc", "l", "y"); in TestNotifications()
193 RedisModuleCallReply *r = RedisModule_Call(ctx, "HGET", "cc", "notifications", "foo"); in TestNotifications()
203 r = RedisModule_Call(ctx, "HGET", "cc", "notifications", "bar"); in TestNotifications()
213 r = RedisModule_Call(ctx, "HGET", "cc", "notifications", "baz"); in TestNotifications()
223 r = RedisModule_Call(ctx, "HGET", "cc", "notifications", "l"); in TestNotifications()
228 RedisModule_Call(ctx, "FLUSHDB", ""); in TestNotifications()
230 return RedisModule_ReplyWithSimpleString(ctx, "OK"); in TestNotifications()
232 RedisModule_Call(ctx, "FLUSHDB", ""); in TestNotifications()
234 return RedisModule_ReplyWithSimpleString(ctx, "ERR"); in TestNotifications()
238 int TestCtxFlags(RedisModuleCtx *ctx, RedisModuleString **argv, int argc) { in TestCtxFlags() argument
242 RedisModule_AutoMemory(ctx); in TestCtxFlags()
254 int flags = RedisModule_GetContextFlags(ctx); in TestCtxFlags()
264 RedisModule_Call(ctx, "config", "ccc", "set", "appendonly", "yes"); in TestCtxFlags()
265 flags = RedisModule_GetContextFlags(ctx); in TestCtxFlags()
270 RedisModule_Call(ctx, "config", "ccc", "set", "save", "900 1"); in TestCtxFlags()
271 flags = RedisModule_GetContextFlags(ctx); in TestCtxFlags()
281 RedisModule_Call(ctx, "config", "ccc", "set", "maxmemory", "100000000"); in TestCtxFlags()
282 flags = RedisModule_GetContextFlags(ctx); in TestCtxFlags()
287 RedisModule_Call(ctx, "config", "ccc", "set", "maxmemory-policy", "allkeys-lru"); in TestCtxFlags()
288 flags = RedisModule_GetContextFlags(ctx); in TestCtxFlags()
293 RedisModule_Call(ctx, "config", "ccc", "set", "appendonly", "no"); in TestCtxFlags()
294 RedisModule_Call(ctx, "config", "ccc", "set", "save", ""); in TestCtxFlags()
295 RedisModule_Call(ctx, "config", "ccc", "set", "maxmemory", "0"); in TestCtxFlags()
296 RedisModule_Call(ctx, "config", "ccc", "set", "maxmemory-policy", "noeviction"); in TestCtxFlags()
299 RedisModule_Log(ctx, "warning", "Failed CTXFLAGS Test. Reason: %s", errString); in TestCtxFlags()
300 return RedisModule_ReplyWithSimpleString(ctx, "ERR"); in TestCtxFlags()
303 return RedisModule_ReplyWithSimpleString(ctx, "OK"); in TestCtxFlags()
310 int TestAssertStringReply(RedisModuleCtx *ctx, RedisModuleCallReply *reply, char *str, size_t len) { in TestAssertStringReply() argument
314 RedisModule_Log(ctx,"warning","Unexpected reply type %d", in TestAssertStringReply()
319 expected = RedisModule_CreateString(ctx,str,len); in TestAssertStringReply()
323 RedisModule_Log(ctx,"warning", in TestAssertStringReply()
333 int TestAssertIntegerReply(RedisModuleCtx *ctx, RedisModuleCallReply *reply, long long expected) { in TestAssertIntegerReply() argument
335 RedisModule_Log(ctx,"warning","Unexpected reply type %d", in TestAssertIntegerReply()
341 RedisModule_Log(ctx,"warning", in TestAssertIntegerReply()
351 RedisModule_Log(ctx,"warning","Testing %s", name); \
352 reply = RedisModule_Call(ctx,name,__VA_ARGS__); \
356 int TestIt(RedisModuleCtx *ctx, RedisModuleString **argv, int argc) { in TestIt() argument
360 RedisModule_AutoMemory(ctx); in TestIt()
365 if (!TestAssertIntegerReply(ctx,reply,0)) goto fail; in TestIt()
368 if (!TestAssertStringReply(ctx,reply,"PONG",4)) goto fail; in TestIt()
371 if (!TestAssertStringReply(ctx,reply,"OK",2)) goto fail; in TestIt()
374 if (!TestAssertStringReply(ctx,reply,"OK",2)) goto fail; in TestIt()
377 if (!TestAssertStringReply(ctx,reply,"foobar",6)) goto fail; in TestIt()
380 if (!TestAssertStringReply(ctx,reply,"OK",2)) goto fail; in TestIt()
383 if (!TestAssertStringReply(ctx,reply,"foobar",6)) goto fail; in TestIt()
386 if (!TestAssertStringReply(ctx,reply,"Got 3 args. argv[1]: foo, argv[2]: bar",38)) goto fail; in TestIt()
389 if (!TestAssertStringReply(ctx,reply,"OK",2)) goto fail; in TestIt()
391 RedisModule_ReplyWithSimpleString(ctx,"ALL TESTS PASSED"); in TestIt()
395 RedisModule_ReplyWithSimpleString(ctx, in TestIt()
400 int RedisModule_OnLoad(RedisModuleCtx *ctx, RedisModuleString **argv, int argc) { in RedisModule_OnLoad() argument
404 if (RedisModule_Init(ctx,"test",1,REDISMODULE_APIVER_1) in RedisModule_OnLoad()
407 if (RedisModule_CreateCommand(ctx,"test.call", in RedisModule_OnLoad()
411 if (RedisModule_CreateCommand(ctx,"test.string.append", in RedisModule_OnLoad()
415 if (RedisModule_CreateCommand(ctx,"test.string.append.am", in RedisModule_OnLoad()
419 if (RedisModule_CreateCommand(ctx,"test.string.printf", in RedisModule_OnLoad()
423 if (RedisModule_CreateCommand(ctx,"test.ctxflags", in RedisModule_OnLoad()
427 if (RedisModule_CreateCommand(ctx,"test.unlink", in RedisModule_OnLoad()
431 if (RedisModule_CreateCommand(ctx,"test.it", in RedisModule_OnLoad()
435 RedisModule_SubscribeToKeyspaceEvents(ctx, in RedisModule_OnLoad()
440 if (RedisModule_CreateCommand(ctx,"test.notify", in RedisModule_OnLoad()