@ythub/nestjs-redis
v3.0.1
Published
Redis(ioredis) module for NestJS framework
Downloads
2
Maintainers
Readme
Redis(ioredis) module for NestJS framework.
Features 🚀
- Support redis and cluster
- Support health check
- Specify single or multiple clients
- Inject a redis/cluster client via
@InjectRedis()
and@InjectCluster()
decorator - Get a redis/cluster client via
RedisService
andClusterService
- Easy to test via
getRedisToken()
andgetClusterToken()
Documentation
For the legacy V2 or V3@next documentation, click here.
Test coverage
| Statements | Branches | Functions | Lines | | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------- | | | | | |
Install
NestJS 8:
$ npm install --save @liaoliaots/nestjs-redis ioredis
$ npm install --save-dev @types/ioredis
$ yarn add @liaoliaots/nestjs-redis ioredis
$ yarn add --dev @types/ioredis
NestJS 7:
$ npm install --save @liaoliaots/nestjs-redis@2 ioredis @nestjs/terminus@7
$ npm install --save-dev @types/ioredis
$ yarn add @liaoliaots/nestjs-redis@2 ioredis @nestjs/terminus@7
$ yarn add --dev @types/ioredis
Test a class
This package exports getRedisToken()
and getClusterToken()
functions that return an internal injection token based on the provided context. Using this token, you can provide a mock implementation of the redis/cluster client using any of the standard custom provider techniques, including useClass
, useValue
, and useFactory
.
Redis
const module: TestingModule = await Test.createTestingModule({
providers: [{ provide: getRedisToken('namespace'), useValue: mockClient }, YourService]
}).compile();
Cluster
const module: TestingModule = await Test.createTestingModule({
providers: [{ provide: getClusterToken('namespace'), useValue: mockClient }, YourService]
}).compile();
TODO
- [ ] select db
Package dependency overview
Author
👤 LiaoLiao
- Github: @liaoliaots
🤝 Contributing
Contributions, issues and feature requests are welcome!Feel free to check issues page.
Show your support
Give a ⭐️ if this project helped you!