All files / lib/definitions FactoryInstantiation.ts

100% Statements 6/6
100% Branches 0/0
100% Functions 2/2
100% Lines 6/6

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29  12x       12x 5x             5x   5x                   5x      
import { IFactoryDefinition } from "./definitionInterfaces/IFactoryDefinition";
import { ConstructorInstantiation } from "./ConstructorInstantiation";
import { IInstantiatable } from "../interfaces/IInstantiatable";
import { IResolver } from "../interfaces/IResolver";
 
export class FactoryInstantiation implements IInstantiatable {
    tags: string[] = [];
 
    definition: IFactoryDefinition;
 
    constructorInstantiation: ConstructorInstantiation;
 
    constructor(definition: IFactoryDefinition, resolver: IResolver) {
        this.definition = definition;
 
        this.constructorInstantiation = new ConstructorInstantiation({
                key: definition.key,
                content: definition.content,
                context: definition.context,
                instantiationMode: definition.instantiationMode
            },
            resolver);
    }
 
    async instantiate() {
        return this.constructorInstantiation.instantiate();
    }
}