public void RetrieveStringProperty_PropertyOnInheritedInterface()
        {
            var interfaceApplierFactory = new ReflectionInterfaceApplierFactory("InterfaceApplierFactoryTests", ComVisibilityOptions.NotVisible);
            var interfaceApplier        = interfaceApplierFactory.GenerateInterfaceApplier <IPerson>(
                new ActionlessReadValueConverter()
                );
            var src        = new ReadOnlyNamedClass1("name");
            var srcWrapped = interfaceApplier.Apply(src);

            Assert.Equal("name", srcWrapped.Name);
        }
        public void WrappingToInaccessibleInterfaceWillFail()
        {
            var interfaceApplierFactory = new ReflectionInterfaceApplierFactory("InterfaceApplierFactoryTests", ComVisibilityOptions.NotVisible);
            var interfaceApplier        = interfaceApplierFactory.GenerateInterfaceApplier <IPrivateNamedReadOnly>(
                new ActionlessReadValueConverter()
                );
            var src = new ReadOnlyNamedClass1("name");

            Assert.Throws <TypeLoadException>(() =>
            {
                interfaceApplier.Apply(src);
            });
        }