public IView Run()
        {
            var ctx         = AssemblyModel.GetAssembly(Context, Assembly);
            var nsWithTypes = new List <AssemblyNamespaceView>();

            foreach (var ns in ctx.Context.Namespaces.GetAllChildrenValues(new List <string>()))
            {
                if (ns.Types.Count != 0)
                {
                    var typeList = new List <ReflectType>();
                    foreach (var type in ns.Types.Values)
                    {
                        typeList.Add(type.Value);
                    }
                    nsWithTypes.Add(new AssemblyNamespaceView()
                    {
                        Namespace = ns,
                        Types     = typeList
                    });
                }
            }


            var view = new AssemblyView
            {
                Assembly            = ctx,
                NamespacesWithTypes = nsWithTypes
            };

            return(view);
        }
        public void GetContextNamespaceContextModel()
        {
            AssemblyModel.AddContext("ContextTest1", @"..\..\..\Test\ContextTest1");
            var ns        = AssemblyModel.GetNamespace("ContextTest1", "Microsoft.VisualBasic.FileIO");
            var assemebly = AssemblyModel.GetAssembly("ContextTest1", "Microsoft.VisualBasic");

            Assert.IsNotNull(ns);
            Assert.AreEqual("Microsoft.VisualBasic.FileIO", ns.Name);
            Assert.AreEqual(assemebly, ns.Assembly);
            Assert.AreEqual(10, ns.Types.Count);
        }
 public void GetAssemblyInvalidContextThrowsInvalidContextException()
 {
     AssemblyModel.AddContext("ContextTest1", @"..\..\..\Test\ContextTest1");
     try
     {
         var asms = AssemblyModel.GetAssembly("ContextTestInvalid", "Microsoft.VisualBasic");
     }
     catch (InvalidContextModelException ex)
     {
         Assert.AreEqual(@"ContextTestInvalid", ex.Context);
         throw;
     }
 }
        public void GetContextAssemblyContextModel()
        {
            AssemblyModel.AddContext("ContextTest1", @"..\..\..\Test\ContextTest1");
            var asms = AssemblyModel.GetAssembly("ContextTest1", "Microsoft.VisualBasic");

            Assert.IsNotNull(asms);
            Assert.AreEqual("Microsoft.VisualBasic", asms.Name);
            Assert.AreEqual("Microsoft.VisualBasic, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", asms.FullName);
            Assert.IsNotNull(asms.PublicKey);
            Assert.AreEqual("v4.0.30319", asms.Version);

            //Assert.AreEqual(8, asms.Namespaces.Count);
        }