public void TestDependency1() { Injector depInjector = new Injector(); Dependency1 dep = depInjector.CreateDependency1(); dep.DoStuff(); }
public void InjectionArgsSource_creates_argument_list_with_values_returned_by_factory() { var dep1 = new Dependency1(); var dep2 = new Dependency2(); object Factory(Type t) { if (typeof(IDependency1) == t) { return(dep1); } if (typeof(IDependency2) == t) { return(dep2); } throw new Exception($"Requested unsupported dependency type {t.FullName}"); } var source = new InjectionArgsSource <DependencyInjectingTestClass>(Factory); var contents = source.GetInjectionParameters(); Assert.That(contents.Length, Is.EqualTo(2)); Assert.That(contents[0], Is.InstanceOf <IDependency1>()); Assert.That(contents[0], Is.InstanceOf <Dependency1>()); Assert.That(contents[0], Is.SameAs(dep1)); Assert.That(contents[1], Is.InstanceOf <IDependency2>()); Assert.That(contents[1], Is.InstanceOf <Dependency2>()); Assert.That(contents[1], Is.SameAs(dep2)); }
public void UseDependency() { ConsoleLogService logSvc = new ConsoleLogService(LogType.Info); OutlookEmailService emailSvc = new OutlookEmailService(); Dependency1 dep = new Dependency1(logSvc, emailSvc); dep.DoStuff(); }
public override int GetHashCode() { unchecked { var hashCode = (Dependency1 != null ? Dependency1.GetHashCode() : 0); hashCode = (hashCode * 397) ^ (Dependency2 != null ? Dependency2.GetHashCode() : 0); hashCode = (hashCode * 397) ^ Reason.GetHashCode(); return(hashCode); } }
public void When_Existing_Object_Is_Provided_Then_Class_Is_Created_Using_Existing_Object_As_Dependency() { var existingObject = new Dependency1(); existingObject.CustomMessage1 = "Custom Message"; var testClass = Get <ClassWithOneDependency>(existingObject); var result = testClass.RunTest(); Assert.AreEqual("I use 1 dependency: Custom Message", result); }
public void changing_implementation_of_parent_singleton_in_child_does_not_change_parent_implementation() { var instance = new Dependency1(); var sut = this.CreateSut(); sut.Register <IDependency1>(instance); var childContainer = sut.CreateChildContainer(); childContainer.Register <IDependency1>(new Dependency1()); sut.Resolve <IDependency1>().ShouldBeSameAs(instance); }
public void SutNotCreated_SetsDependencyInstance() { //arrange var dependencyInstance = new Dependency1(null); //act _testSuit.SetDependencyToInstance <IDependency1, Dependency1>(dependencyInstance); //assert _testSuit.GetDependency <IDependency1>().Should().Be(dependencyInstance); _testSuit.Sut.Dependency1.Should().Be(dependencyInstance); }
public void Reset_CleansDependencyInstance() { //arrange var dependencyInstance = new Dependency1(null); _testSuit.SetDependencyToInstance <IDependency1, Dependency1>(dependencyInstance); //act _testSuit.Reset(); //assert _testSuit.GetDependency <IDependency1>().Should().BeAssignableTo <IMocked>(); _testSuit.Sut.Dependency1.Should().BeAssignableTo <IMocked>(); }
public void When_Multiple_Existing_Objects_Are_Provided_Then_Class_Is_Created_Using_Existing_Objects_As_Dependencies() { var existingObject1 = new Dependency1(); existingObject1.CustomMessage1 = "Custom Message1"; var existingObject2 = new Dependency2(); existingObject2.CustomMessage2 = "Custom Message2"; var testClass = Get <ClassWithTwoDependencies>(existingObject1, existingObject2); var result = testClass.RunTest(); Assert.AreEqual("I use 2 dependencies: Custom Message1, Custom Message2", result); }
public void RegisterTypeWithoutPublicCtor() { var cb = new ContainerBuilder(); var dependency1 = new Dependency1(); var dependency2 = new Dependency2(); cb.Register(_ => dependency1); cb.Register(_ => dependency2); cb.RegisterType <ParentWithoutPublicCtor>(); IComponentContext container = cb.Build(); Assert.Throws <DependencyResolutionException>( () => container.Resolve <ParentWithoutPublicCtor>()); }
public void RegisterTypeWithOnePublicCtor() { var cb = new ContainerBuilder(); var dependency1 = new Dependency1(); var dependency2 = new Dependency2(); cb.Register(_ => dependency1); cb.Register(_ => dependency2); cb.RegisterType <ParentWithOnePublicCtor>(); IComponentContext container = cb.Build(); var instance = container.Resolve <ParentWithOnePublicCtor>(); Assert.Equal(dependency1, instance.D1); Assert.Equal(dependency2, instance.D2); }
public void RegisterTypeWithDependency() { var cb = new ContainerBuilder(); var dependency1 = new Dependency1(); var dependency2 = new Dependency2(); cb.Register(_ => dependency1); cb.Register(_ => dependency2); cb.RegisterType <Parent>(); IComponentContext container = cb.Build(); var parent = container.Resolve <Parent>(); Assert.Equal(dependency1, parent.D1); Assert.Equal(dependency2, parent.D2); }
public ExampleClass( long startId, long endId, bool reverse, int loadIdsLimit, long maxBufferSize, CancellationTokenSource cancellationTokenSource, Dependency1 dependency1, Dependency2 dependency2) { StartId = startId; EndId = endId; Reverse = reverse; LoadIdsLimit = loadIdsLimit; MaxBufferSize = maxBufferSize; CancellationTokenSource = cancellationTokenSource; Dependency1 = dependency1; Dependency2 = dependency2; }
public Run() { var dependency = new Dependency1(); dependency.DoSomething(); }
public Dependency3(Dependency1 dependency1, Dependency2 dependency2) { Dependency1 = dependency1; Dependency2 = dependency2; }
public ParentWithMultipleCtor(Dependency1 d1, Dependency2 d2) { }
ParentWithoutPublicCtor(Dependency1 d1) { }
public ParentWithOnePublicCtor(Dependency1 d1, Dependency2 d2) { D1 = d1; D2 = d2; }
public SomeTask(IFakeDbContext fakeDbContext, Dependency1 dependency1, Dependency2 dependency2) { FakeDbContext = fakeDbContext; Dependency1 = dependency1; Dependency2 = dependency2; }
public SingleInstance(Dependency1 d1) { }
public string GetSomeString() { Dependency1.Execute(); Dependency2.GetAge(); return(SomeRepository.GetSomeString()); }
// "arg1, arg2" protected override IBaseService <CustomEntity> Create(Dependency1 d1, Dependency2 d2) => new BaseService <CustomerEntity>(d1, d2);
public Bar(Dependency1 d1, IDependency2 d2) { }
public Dependency2(Dependency1 dependency1) { Dependency1 = dependency1; }
public void Construct(Dependency1 dependency1) { _dependency1 = dependency1; }
public void Construct(Dependency1 dependency1, Dependency2 dependency2, Dependency3 dependency3) { _dependency1 = dependency1; _dependency2 = dependency2; _dependency3 = dependency3; }
public void DoSomething(Dependency1 d) { d.DoSomething(); }
public Parent(Dependency1 d1, Dependency2 d2) { D1 = d1; D2 = d2; }
public ConcreteObjectWithOneConcreteConstructor(Dependency1 dependency1) { Dependency1 = dependency1; }
public TestConsumerLogicWithDependency(Dependency1 dependency) { }
protected abstract IBaseServce <TEntity> Create(Dependency1 d1, Dependency2 d2);
public ResolvedSingleton(Dependency1 dependency1, Dependency2 dependency2) { }