public void Mock_ThisConfig()
        {
            var repository = new MockRepository();

            var thisMock = repository.StrictMock <IBaseType32> ();
            var mixin    = new BT3Mixin2();

            MixinTargetMockUtility.MockMixinTarget(mixin, thisMock);
            Assert.That(mixin.Target, Is.SameAs(thisMock));
        }
        public void CreateMixinWithMockedTarget_This()
        {
            var repository = new MockRepository();

            var thisMock = repository.StrictMock <IBaseType32> ();

            BT3Mixin2 mixin =
                MixinTargetMockUtility.CreateMixinWithMockedTarget <BT3Mixin2, IBaseType32> (thisMock);

            Assert.That(mixin.Target, Is.SameAs(thisMock));
        }
        public void SignalOnDeserialized_This()
        {
            var thisMock = new SerializableBaseType32Mock();

            BT3Mixin2 mixin            = MixinTargetMockUtility.CreateMixinWithMockedTarget <BT3Mixin2, IBaseType32> (thisMock);
            var       deserializedData = Serializer.SerializeAndDeserialize(Tuple.Create(thisMock, mixin));

            MixinTargetMockUtility.MockMixinTargetAfterDeserialization(deserializedData.Item2, deserializedData.Item1);
            Assert.That(deserializedData.Item2.Target, Is.Not.Null);
            Assert.That(deserializedData.Item2.Target, Is.SameAs(deserializedData.Item1));
        }