public void DynamicProxyGenerator_GetFakeInstanceFor_OnlyGetters_WithInheritance_ShouldWork()
        {
            // Arrange + Act
            IMyTestModelWithGettersWithInheritance instance = DynamicProxyGenerator.GetFakeInstanceFor <IMyTestModelWithGettersWithInheritance>();

            // Assert
            Assert.IsNotNull(instance);
        }
        public void DynamicProxyGenerator_GetFakeInstanceFor_ShouldWork()
        {
            // Arrange + Act
            IMyTestModel instance = DynamicProxyGenerator.GetFakeInstanceFor <IMyTestModel>();

            // Assert
            Assert.IsNotNull(instance);
        }
        public void DynamicProxyGenerator_GetFakeInstanceFor_OnlyGetters_WithInheritance_ShouldReturnValidInstance()
        {
            // Arrange
            int    id   = 1;
            string name = "123123";
            IMyTestModelWithGettersWithInheritance instance = DynamicProxyGenerator.GetFakeInstanceFor <IMyTestModelWithGettersWithInheritance>();

            // Act
            instance.GetType().GetProperty(nameof(IMyTestModelWithGetters.Id)).SetMethod.Invoke(instance, new object[] { id });
            instance.GetType().GetProperty(nameof(IMyTestModelWithGetters.Name)).SetMethod.Invoke(instance, new object[] { name });

            // Assert
            Assert.AreEqual(id, instance.Id);
            Assert.AreEqual(name, instance.Name);
        }
        public void DynamicProxyGenerator_GetFakeInstanceFor_WithInheritance_ShouldReturnValidInstance()
        {
            // Arrange
            int    id   = 1;
            string name = "123123";
            IMyTestModelWithInheritance instance = DynamicProxyGenerator.GetFakeInstanceFor <IMyTestModelWithInheritance>();

            // Act
            instance.Id   = id;
            instance.Name = name;

            // Assert
            Assert.AreEqual(id, instance.Id);
            Assert.AreEqual(name, instance.Name);
        }