import { Test, TestingModule } from '@nestjs/testing'; import { ConfigModule } from '@nestjs/config'; import { CandlesService } from './candles.service'; import { MoexClientService } from '../moex-client/moex-client.service'; import { CacheService } from '../cache/cache.service'; import configuration from '../../config/configuration'; import { CandleInterval } from './dto/candles-query.dto'; describe('CandlesService', () => { let service: CandlesService; beforeEach(async () => { const module: TestingModule = await Test.createTestingModule({ imports: [ConfigModule.forRoot({ load: [configuration] })], providers: [ CandlesService, MoexClientService, { provide: 'CACHE_MANAGER', useValue: { get: () => undefined, set: () => Promise.resolve(), del: () => Promise.resolve(), }, }, CacheService, ], }).compile(); service = module.get(CandlesService); }); it('should be defined', () => { expect(service).toBeDefined(); }); it('should return daily candles for SBER', async () => { const result = await service.getCandles( 'shares', 'SBER', CandleInterval.DAY, '2026-05-01', '2026-06-01', ); expect(result.data.length).toBeGreaterThan(0); expect(result.data[0].open).toBeDefined(); }, 15000); });