refactor: format with biome
This commit is contained in:
@@ -1,95 +1,95 @@
|
||||
import { describe, expect, test } from "bun:test";
|
||||
import "reflect-metadata";
|
||||
import { AlveoFactory, Inject, Injectable, Module } from "../index";
|
||||
|
||||
describe("Alveo Modules", () => {
|
||||
test("should handle Module imports and exports", async () => {
|
||||
@Injectable()
|
||||
class SharedService {
|
||||
identify() {
|
||||
return "shared";
|
||||
}
|
||||
}
|
||||
|
||||
@Module({
|
||||
providers: [SharedService],
|
||||
exports: [SharedService],
|
||||
})
|
||||
class LibModule {}
|
||||
|
||||
@Module({
|
||||
imports: [LibModule],
|
||||
})
|
||||
class AppModule {}
|
||||
|
||||
const app = await AlveoFactory.create(AppModule);
|
||||
const service = await app.get(SharedService);
|
||||
|
||||
expect(service.identify()).toBe("shared");
|
||||
});
|
||||
|
||||
test("should support Synchronous Dynamic Modules", async () => {
|
||||
@Injectable()
|
||||
class DynamicService {
|
||||
constructor(@Inject("CONFIG") public readonly config: string) {}
|
||||
}
|
||||
|
||||
@Module({})
|
||||
class DynamicModule {
|
||||
static forRoot(config: string) {
|
||||
return {
|
||||
module: DynamicModule,
|
||||
providers: [
|
||||
DynamicService,
|
||||
{ provide: "CONFIG", useValue: config },
|
||||
],
|
||||
exports: [DynamicService],
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@Module({
|
||||
imports: [DynamicModule.forRoot("dynamic_config")],
|
||||
})
|
||||
class AppModule {}
|
||||
|
||||
const app = await AlveoFactory.create(AppModule);
|
||||
const service = await app.get(DynamicService);
|
||||
|
||||
expect(service.config).toBe("dynamic_config");
|
||||
});
|
||||
|
||||
test("should support Asynchronous Dynamic Modules", async () => {
|
||||
@Injectable()
|
||||
class AsyncDynamicService {
|
||||
constructor(
|
||||
@Inject("ASYNC_CONFIG") public readonly config: string,
|
||||
) {}
|
||||
}
|
||||
|
||||
@Module({})
|
||||
class AsyncDynamicModule {
|
||||
static async forRoot(config: string) {
|
||||
await new Promise((resolve) => setTimeout(resolve, 10));
|
||||
return {
|
||||
module: AsyncDynamicModule,
|
||||
providers: [
|
||||
AsyncDynamicService,
|
||||
{ provide: "ASYNC_CONFIG", useValue: config },
|
||||
],
|
||||
exports: [AsyncDynamicService],
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@Module({
|
||||
imports: [AsyncDynamicModule.forRoot("async_dynamic_config")],
|
||||
})
|
||||
class AppModule {}
|
||||
|
||||
const app = await AlveoFactory.create(AppModule);
|
||||
const service = await app.get(AsyncDynamicService);
|
||||
|
||||
expect(service.config).toBe("async_dynamic_config");
|
||||
});
|
||||
});
|
||||
import { describe, expect, test } from "bun:test";
|
||||
import "reflect-metadata";
|
||||
import { AlveoFactory, Inject, Injectable, Module } from "../index";
|
||||
|
||||
describe("Alveo Modules", () => {
|
||||
test("should handle Module imports and exports", async () => {
|
||||
@Injectable()
|
||||
class SharedService {
|
||||
identify() {
|
||||
return "shared";
|
||||
}
|
||||
}
|
||||
|
||||
@Module({
|
||||
providers: [SharedService],
|
||||
exports: [SharedService],
|
||||
})
|
||||
class LibModule {}
|
||||
|
||||
@Module({
|
||||
imports: [LibModule],
|
||||
})
|
||||
class AppModule {}
|
||||
|
||||
const app = await AlveoFactory.create(AppModule);
|
||||
const service = await app.get(SharedService);
|
||||
|
||||
expect(service.identify()).toBe("shared");
|
||||
});
|
||||
|
||||
test("should support Synchronous Dynamic Modules", async () => {
|
||||
@Injectable()
|
||||
class DynamicService {
|
||||
constructor(@Inject("CONFIG") public readonly config: string) {}
|
||||
}
|
||||
|
||||
@Module({})
|
||||
class DynamicModule {
|
||||
static forRoot(config: string) {
|
||||
return {
|
||||
module: DynamicModule,
|
||||
providers: [
|
||||
DynamicService,
|
||||
{ provide: "CONFIG", useValue: config },
|
||||
],
|
||||
exports: [DynamicService],
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@Module({
|
||||
imports: [DynamicModule.forRoot("dynamic_config")],
|
||||
})
|
||||
class AppModule {}
|
||||
|
||||
const app = await AlveoFactory.create(AppModule);
|
||||
const service = await app.get(DynamicService);
|
||||
|
||||
expect(service.config).toBe("dynamic_config");
|
||||
});
|
||||
|
||||
test("should support Asynchronous Dynamic Modules", async () => {
|
||||
@Injectable()
|
||||
class AsyncDynamicService {
|
||||
constructor(
|
||||
@Inject("ASYNC_CONFIG") public readonly config: string,
|
||||
) {}
|
||||
}
|
||||
|
||||
@Module({})
|
||||
class AsyncDynamicModule {
|
||||
static async forRoot(config: string) {
|
||||
await new Promise((resolve) => setTimeout(resolve, 10));
|
||||
return {
|
||||
module: AsyncDynamicModule,
|
||||
providers: [
|
||||
AsyncDynamicService,
|
||||
{ provide: "ASYNC_CONFIG", useValue: config },
|
||||
],
|
||||
exports: [AsyncDynamicService],
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@Module({
|
||||
imports: [AsyncDynamicModule.forRoot("async_dynamic_config")],
|
||||
})
|
||||
class AppModule {}
|
||||
|
||||
const app = await AlveoFactory.create(AppModule);
|
||||
const service = await app.get(AsyncDynamicService);
|
||||
|
||||
expect(service.config).toBe("async_dynamic_config");
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user