Skip to content

Instantly share code, notes, and snippets.

@hjerpbakk
Created November 16, 2014 19:50
Show Gist options
  • Save hjerpbakk/e33fba08555d4fdfead8 to your computer and use it in GitHub Desktop.
Save hjerpbakk/e33fba08555d4fdfead8 to your computer and use it in GitHub Desktop.
Shows resolving of constructor arguments in FermiContainer
[Test]
public void Register_EvenMoreComplexClass_CanBeResolved() {
m_fermiContainer.Register<IEvenMoreComplex, EvenMoreComplex>();
m_fermiContainer.Register<ICalculator, Calculator>();
m_fermiContainer.Register<IComplex, ComplexClass>();
m_fermiContainer.Register<ClassWithoutInterface>();
var complexInstance = m_fermiContainer.Resolve<IEvenMoreComplex>();
IsInstanceOf<IEvenMoreComplex>(complexInstance);
}
public interface ICalculator {}
public class Calculator : ICalculator {}
public interface IComplex {}
public class ComplexClass : IComplex {
public ComplexClass(ICalculator calculator) {}
}
public interface IEvenMoreComplex {}
public class EvenMoreComplex : IEvenMoreComplex {
public EvenMoreComplex(IComplex complex, ICalculator calculator, ClassWithoutInterface classWithoutInterface) {}
}
public class ClassWithoutInterface {}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment