public void TargetType()
        {
            MockRepository mocks = new MockRepository();
            SideEffectObject target = new SideEffectObject();

            IObjectFactory factory = mocks.CreateMock<IObjectFactory>();

            using (mocks.Record())
            {
                Expect.Call(factory.IsPrototype(null)).Return(true);
                Expect.Call(factory.GetType(null)).Return(typeof(SideEffectObject));
            }

            using (mocks.Playback())
            {
                PrototypeTargetSource source = new PrototypeTargetSource();
                source.ObjectFactory = factory;
                Assert.AreEqual(target.GetType(), source.TargetType, "Wrong TargetType being returned.");
            }

        }
		public void TargetType()
		{
			SideEffectObject target = new SideEffectObject();
			IDynamicMock mock = new DynamicMock(typeof (IObjectFactory));
			mock.ExpectAndReturn("IsPrototype", true, null);
			mock.ExpectAndReturn("GetType", typeof(SideEffectObject), null);
			PrototypeTargetSource source = new PrototypeTargetSource();
			source.ObjectFactory = (IObjectFactory) mock.Object;
			Assert.AreEqual(target.GetType(), source.TargetType, "Wrong TargetType being returned.");
			mock.Verify();
		}