private void BrowseAssembly() { AssemblyBrowser browser = new AssemblyBrowser(); BrowserResult result = browser.Browse(AssemblyPath); AssemblyFullName = result.FullName; AssemblyInfo = result.Namespaces; }
public void TestSimpleAssembly() { result = browser.Browse(@"Assemblies\Tracer.dll"); Assert.AreEqual(result.Namespaces.Count, 1); Assert.AreEqual(result.Namespaces[0].Name, "Tracer"); Assert.AreEqual(result.Namespaces[0].DataTypes.Count, 7); Assert.IsTrue(result.Namespaces[0].DataTypes.Exists(obj => obj.Name == "TracerMain")); Assert.IsTrue(result.Namespaces[0].DataTypes.Exists(obj => obj.Name == "TraceResult")); Assert.IsTrue(result.Namespaces[0].DataTypes.Exists(obj => obj.Name == "ITracer")); List <IMember> members = result.Namespaces[0].DataTypes.Single(obj => obj.Name == "ThreadStack").Members; Assert.IsTrue(members.Exists(obj => obj.Name == "TraceWatches")); members = result.Namespaces[0].DataTypes.Single(obj => obj.Name == "ThreadItem").Members; Assert.IsTrue(members.Exists(obj => obj.Name == "ThreadID")); Assert.IsTrue(members.Single(obj => obj.Name == "ThreadID").Accessor == "public"); IMember member = result.Namespaces[0].DataTypes.Single(obj => obj.Name == "TracerMain").Members.Single(ex => ex.Name == "AddToTraceResult"); Assert.AreEqual((member as AssemblyMethod).Parameters[0].Name, "watch"); }