49 lines
1.4 KiB
TypeScript
49 lines
1.4 KiB
TypeScript
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>(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);
|
|
});
|