public void CreateHandler_WhenInstanceIsNotOfRequestedType_Throws()
        {
            string instance = "";
            var instanceHandlerFactory = new InstanceHandlerFactory(instance);
            var dependencyResolver = MockRepository.GenerateStub<IObjectDependencyResolver>();
            var contractType = typeof(int); // not a string as the instance is
            var objectType = typeof(int);

            var ex = Assert.Throws<RuntimeException>(() => instanceHandlerFactory.CreateHandler(dependencyResolver,
                contractType, objectType, new PropertySet()));
            Assert.AreEqual("Could not satisfy contract of type 'System.Int32' using pre-manufactured instance of type 'System.String'.", ex.Message);
        }
        public void CreateHandler_WhenInstanceIsOfCorrectType_ReturnsAHandlerThatYieldsTheInstance()
        {
            string instance = "";
            var instanceHandlerFactory = new InstanceHandlerFactory(instance);
            var dependencyResolver = MockRepository.GenerateStub<IObjectDependencyResolver>();
            var contractType = typeof(string);
            var objectType = typeof(string);

            IHandler handler = instanceHandlerFactory.CreateHandler(dependencyResolver,
                contractType, objectType, new PropertySet());

            Assert.AreSame(instance, handler.Activate());
        }