public void ConvertFrom()
        {
            ReferenceConverter converter     = new ReferenceConverter(typeof(ITestInterface));
            string             referenceName = "reference name";

            // no context
            Assert.IsNull(converter.ConvertFrom(null, null, referenceName), "#1");

            TestComponent component = new TestComponent();

            // context with IReferenceService
            TestReferenceService referenceService = new TestReferenceService();

            referenceService.AddReference(referenceName, component);
            TestTypeDescriptorContext context = new TestTypeDescriptorContext(referenceService);

            Assert.AreSame(component, converter.ConvertFrom(context, null, referenceName), "#2");

            // context with Component without IReferenceService
            Container container = new Container();

            container.Add(component, referenceName);
            context           = new TestTypeDescriptorContext();
            context.Container = container;
            Assert.AreSame(component, converter.ConvertFrom(context, null, referenceName), "#3");
        }
        public void ConvertFrom()
        {
            ReferenceConverter converter = new ReferenceConverter(typeof(ITestInterface));
            string referenceName = "reference name";
            // no context
            Assert.Null(converter.ConvertFrom(null, null, referenceName));

            TestComponent component = new TestComponent();

            // context with IReferenceService
            TestReferenceService referenceService = new TestReferenceService();
            referenceService.AddReference(referenceName, component);
            TestTypeDescriptorContext context = new TestTypeDescriptorContext(referenceService);
            Assert.Same(component, converter.ConvertFrom(context, null, referenceName));

            // context with Component without IReferenceService
            Container container = new Container();
            container.Add(component, referenceName);
            context = new TestTypeDescriptorContext();
            context.Container = container;
            Assert.Same(component, converter.ConvertFrom(context, null, referenceName));
        }