public AvaloniaRuntimeTypeSource(ITypeFactory typeFactory)
        {
            var namespaceRegistry = new AvaloniaNamespaceRegistry();
            var featureProvider   = new AvaloniaTypeFeatureProvider();
            var typeRepository    = new AvaloniaTypeRepository(namespaceRegistry, typeFactory, featureProvider);

            inner = new RuntimeTypeSource(typeRepository, namespaceRegistry);
        }
        public AvaloniaRuntimeTypeSource(ITypeFactory typeFactory)
        {
            var namespaceRegistry = new AvaloniaNamespaceRegistry();
            var featureProvider = new AvaloniaTypeFeatureProvider();
            var typeRepository = new AvaloniaTypeRepository(namespaceRegistry, typeFactory, featureProvider);

            inner = new RuntimeTypeSource(typeRepository, namespaceRegistry);
        }
        public void Should_Return_Same_ClrNameSpace()
        {
            string name = "clr-namespace:Avalonia.Markup.Xaml.UnitTests.Context;assembly=Avalonia.Markup.Xaml.UnitTests";

            var target = new AvaloniaNamespaceRegistry();

            var ns1 = target.GetNamespace(name);
            var ns2 = target.GetNamespace(name);

            //AvaloniaNamespaceRegistry should not create new CreateClrNamespace
            //for the same namespace
            Assert.Same(ns1, ns2);
        }