public void InstantiageObject_AllRunnersSetup_ObjectReturned() { //Assign var resolver = Substitute.For<IDependencyResolver>(); var context = Context.Create(resolver); var configTask = Substitute.For<AbstractConfigurationResolverTask>(); var objTask = Substitute.For<AbstractObjectConstructionTask>(); resolver.ConfigurationResolverFactory.GetItems().Returns(new[] { configTask }); resolver.ObjectConstructionFactory.GetItems().Returns(new []{objTask}); resolver.GetModelCounter().Returns( new ModelCounter()); configTask.When(x => x.Execute(Arg.Any<ConfigurationResolverArgs>())) .Do(x => x.Arg<ConfigurationResolverArgs>().Result = Substitute.For<AbstractTypeConfiguration>()); var expected = new object(); objTask.When(x => x.Execute(Arg.Any<ObjectConstructionArgs>())) .Do(x => x.Arg<ObjectConstructionArgs>().Result = expected); var service = new StubAbstractService(context); var typeContext = Substitute.For<AbstractTypeCreationContext>(); typeContext.RequestedType = typeof(object); //Act var result = service.InstantiateObject(typeContext); //Assert Assert.AreEqual(expected, result); }
public void InstantiageObject_AllRunnersSetup_ObjectReturned() { //Assign var resolver = Substitute.For <IDependencyResolver>(); var context = Context.Create(resolver); var configTask = Substitute.For <IConfigurationResolverTask>(); var objTask = Substitute.For <IObjectConstructionTask>(); resolver.ConfigurationResolverFactory.GetItems().Returns(new[] { configTask }); resolver.ObjectConstructionFactory.GetItems().Returns(new [] { objTask }); configTask.When(x => x.Execute(Arg.Any <ConfigurationResolverArgs>())) .Do(x => x.Arg <ConfigurationResolverArgs>().Result = Substitute.For <AbstractTypeConfiguration>()); var expected = new object(); objTask.When(x => x.Execute(Arg.Any <ObjectConstructionArgs>())) .Do(x => x.Arg <ObjectConstructionArgs>().Result = expected); var service = new StubAbstractService(context); var typeContext = Substitute.For <AbstractTypeCreationContext>(); typeContext.RequestedType = typeof(object); //Act var result = service.InstantiateObject(typeContext); //Assert Assert.AreEqual(expected, result); }
public void Contructor_ContextIsNull_ThrowsException() { //Assign //Act var service = new StubAbstractService(null); //Assert }
public void Contructor_ContextIsNull_ThrowsException() { //Assign //Act Assert.Throws <NullReferenceException>(() => { var service = new StubAbstractService(null); }); //Assert }