refactor: pick only one option attribute for test module

This commit is contained in:
Kamil Myśliwiec
2025-01-20 08:48:22 +01:00
parent 6254af7224
commit 65cfe0c82a
2 changed files with 16 additions and 10 deletions

View File

@@ -1,19 +1,17 @@
import { ModuleMetadata } from '@nestjs/common/interfaces/modules/module-metadata.interface';
import { MetadataScanner } from '@nestjs/core/metadata-scanner';
import { TestingModuleBuilder } from './testing-module.builder';
import { NestApplicationContextOptions } from '@nestjs/common/interfaces/nest-application-context-options.interface';
import {
TestingModuleBuilder,
TestingModuleOptions,
} from './testing-module.builder';
export class Test {
private static readonly metadataScanner = new MetadataScanner();
public static createTestingModule(
metadata: ModuleMetadata,
contextOptions: NestApplicationContextOptions | undefined = undefined,
options?: TestingModuleOptions,
) {
return new TestingModuleBuilder(
this.metadataScanner,
metadata,
contextOptions,
);
return new TestingModuleBuilder(this.metadataScanner, metadata, options);
}
}

View File

@@ -23,6 +23,14 @@ import { TestingInjector } from './testing-injector';
import { TestingInstanceLoader } from './testing-instance-loader';
import { TestingModule } from './testing-module';
/**
* @publicApi
*/
export type TestingModuleOptions = Pick<
NestApplicationContextOptions,
'moduleIdGeneratorAlgorithm'
>;
/**
* @publicApi
*/
@@ -41,9 +49,9 @@ export class TestingModuleBuilder {
constructor(
private readonly metadataScanner: MetadataScanner,
metadata: ModuleMetadata,
contextOptions: NestApplicationContextOptions | undefined = undefined,
options?: TestingModuleOptions,
) {
this.container = new NestContainer(this.applicationConfig, contextOptions);
this.container = new NestContainer(this.applicationConfig, options);
this.module = this.createModule(metadata);
}