tests: add mode parameter to RegisterInstanceDecorator
- Introduced a `mode` parameter to the `test_RegisterInstanceDecorator` function allowing 'instance' or 'standalone' modes. - Updated test cases to utilize the new `mode` parameter when registering an instance. - Disabled specific ESLint rule in `Decorators.test.ts` for deprecation warnings. - Added an additional test call to `test_RegisterInstanceDecorator` with 'instance' mode.
This commit is contained in:
@@ -282,6 +282,7 @@ export function test_RegisterInstanceDecorator(
|
|||||||
Container: ITSinjex_,
|
Container: ITSinjex_,
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
|
||||||
registerInstance: Function,
|
registerInstance: Function,
|
||||||
|
mode: 'instance' | 'standalone' = 'standalone',
|
||||||
): void {
|
): void {
|
||||||
describe('RegisterInstance Decorator Tests', () => {
|
describe('RegisterInstance Decorator Tests', () => {
|
||||||
let container: ITSinjex;
|
let container: ITSinjex;
|
||||||
@@ -295,7 +296,10 @@ export function test_RegisterInstanceDecorator(
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should register an instance of a dependency', () => {
|
it('should register an instance of a dependency', () => {
|
||||||
@registerInstance('InstanceIdentifier')
|
@registerInstance(
|
||||||
|
'InstanceIdentifier',
|
||||||
|
mode === 'instance' ? 'instance' : undefined,
|
||||||
|
)
|
||||||
class TestClass {
|
class TestClass {
|
||||||
private readonly _dependency!: any;
|
private readonly _dependency!: any;
|
||||||
|
|
||||||
@@ -337,7 +341,10 @@ export function test_RegisterInstanceDecorator(
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should register an instance of a dependency and get it on set', () => {
|
it('should register an instance of a dependency and get it on set', () => {
|
||||||
@registerInstance('InstanceIdentifier')
|
@registerInstance(
|
||||||
|
'InstanceIdentifier',
|
||||||
|
mode === 'instance' ? 'instance' : undefined,
|
||||||
|
)
|
||||||
class TestClass {
|
class TestClass {
|
||||||
private readonly _dependency!: any;
|
private readonly _dependency!: any;
|
||||||
|
|
||||||
|
@@ -1,3 +1,4 @@
|
|||||||
|
/* eslint-disable deprecation/deprecation */
|
||||||
import { TSinjex } from 'src/classes/TSinjex';
|
import { TSinjex } from 'src/classes/TSinjex';
|
||||||
import { Inject } from 'src/decorators/Inject';
|
import { Inject } from 'src/decorators/Inject';
|
||||||
import { Register } from 'src/decorators/Register';
|
import { Register } from 'src/decorators/Register';
|
||||||
@@ -13,3 +14,5 @@ test_InjectDecorator(TSinjex, Inject);
|
|||||||
test_RegisterDecorator(TSinjex, Register);
|
test_RegisterDecorator(TSinjex, Register);
|
||||||
|
|
||||||
test_RegisterInstanceDecorator(TSinjex, RegisterInstance);
|
test_RegisterInstanceDecorator(TSinjex, RegisterInstance);
|
||||||
|
|
||||||
|
test_RegisterInstanceDecorator(TSinjex, Register, 'instance');
|
||||||
|
Reference in New Issue
Block a user