import { Test } from '@nestjs/testing'; import { describe, expect, it } from 'vitest'; import { MeshService } from '../mesh/mesh.service.js'; import { WeatherModule } from './weather.module.js'; import { WeatherService } from './weather.service.js'; describe('DI wiring (module graph)', () => { // compile() instantiates providers but does not run lifecycle hooks, so no TCP connection is opened. it('resolves WeatherService with MeshService provided by MeshModule', async () => { process.env.MESH_DB_PATH = ':memory:'; // keep openMessageDb from touching the repo's ./data const moduleRef = await Test.createTestingModule({ imports: [WeatherModule], }).compile(); expect(moduleRef.get(WeatherService)).toBeInstanceOf(WeatherService); expect(moduleRef.get(MeshService)).toBeInstanceOf(MeshService); }); });