redis-eval-mock
Provides a mock of the EVAL
functionality in Redis using lua.vm.js
in order
to test Lua scripts. It is intended to be used along with an existing mock of
the redis
library, and calls back into it for Redis calls executed from Lua.
In addition, it provides mocks of the cjson
and cmsgpack
libraries provided
by default to Lua by Redis.
API
default(client)
Replaces the implementations of eval
and evalsha
in client with functional
mocks. Returns the client. The implementation does not currently include a mock
script cache, so evalsha
will always throw a NOSCRIPT
error.
Example
import * as redis from 'redis';
import * as mock from 'redis-mock';
import mockEval from 'redis-eval-mock';
jest.spyOn(redis, 'createClient').mockImplementation(() =>
mockEval(mock.createClient())
);
Contributing
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.