All files / src/features/queue queue.module.ts

100% Statements 1/1
100% Branches 4/4
100% Functions 1/1
100% Lines 1/1

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28                      7x                                
import { Module, Global } from '@nestjs/common'
import { BullModule } from '@nestjs/bullmq'
import { ConfigService, ConfigModule } from '@nestjs/config'
import { EmailProducer } from './producers/email.producer'
import { EmailProcessor } from './processors/email.processor'
 
@Global()
@Module({
    imports: [
        BullModule.forRootAsync({
            imports: [ConfigModule],
            useFactory: (configService: ConfigService) => ({
                connection: {
                    host: configService.get('REDIS_HOST') || 'localhost',
                    port: parseInt(configService.get('REDIS_PORT') || '6379'),
                },
            }),
            inject: [ConfigService],
        }),
        BullModule.registerQueue({
            name: 'email',
        }),
    ],
    providers: [EmailProducer, EmailProcessor],
    exports: [EmailProducer, BullModule],
})
export class QueueModule {}