Beispiel #1
0
        public void InternalEIITest()
        {
            XmlDocument doc = new System.Xml.XmlDocument();

            doc.LoadXml(XmlConsts.internalEllXml);

            MemberReference oldmember = null;
            var             type      = GetType(typeof(mdoc.Test2.InternalEIICalss));
            var             docEnum   = new DocumentationEnumerator();

            bool internalEIIflagged = false;

            foreach (DocsNodeInfo info in docEnum.GetDocumentationMembers(doc, type, FrameworkTypeEntry.Empty))
            {
                var flag = MDocUpdater.IsMemberNotPrivateEII(info.Member);

                if (!flag)
                {
                    internalEIIflagged = true;
                    oldmember          = info.Member;
                    //Note : The following operation will not be carried out, just prompt
                    //-> DeleteMember();
                    //-> statisticsCollector.AddMetric();
                }
            }
            Assert.IsTrue(internalEIIflagged, "Internal EII was not flagged");
            Assert.AreEqual("System.String mdoc.Test2.InternalEIICalss::mdoc.Test.SampleClasses.InterfaceA.Getstring(System.Int32)", oldmember.FullName);
        }
Beispiel #2
0
        public void Update_ImportDoc_Test()
        {
            List <DocumentationImporter> setimporters = new List <DocumentationImporter>();
            List <DocumentationImporter> importers    = new List <DocumentationImporter>();
            var filePath = Path.Combine(Path.GetDirectoryName(this.GetType().Module.Assembly.Location), "SampleClasses\\testImportDoc.xml");
            MsxdocDocumentationImporter importer = new MsxdocDocumentationImporter(
                filePath);

            setimporters.Add(importer);

            XmlDocument doc = new System.Xml.XmlDocument();

            doc.LoadXml(XmlConsts.internalEllXml);

            var type    = GetType(typeof(mdoc.Test2.InternalEIICalss));
            var docEnum = new DocumentationEnumerator();

            var nodeMember = docEnum.GetDocumentationMembers(doc, type, FrameworkTypeEntry.Empty).FirstOrDefault(t => t.Member.FullName == "System.String mdoc.Test2.InternalEIICalss::Getstring(System.Int32)");

            var testKeys = new string[] { "returns", "value", "related", "seealso" };

            for (int i = 0; i < testKeys.Length; i++)
            {
                Assert.IsTrue(DocUtils.CheckRemoveByImporter(nodeMember, testKeys[i], importers, setimporters));
            }
        }
Beispiel #3
0
        public void DocMemberEnumerator2()
        {
            var context = InitContext <MyClass>(string.Format(typeFrameXml, multiFrameworkXml), 2, forceAlignment: true);

            FrameworkTypeEntry typeEntry = context.fx.Frameworks[2].Types.First();

            var enumerator = new DocumentationEnumerator();
            var matches    = enumerator.GetDocumentationMembers(context.doc, context.method.DeclaringType.Resolve(), typeEntry);

            Assert.IsTrue(matches.Any(m => m.Member == context.method && m.Node != null), "didn't match the member");
        }
Beispiel #4
0
        public void RemoveInvalidAssembliesInfo()
        {
            XmlDocument doc = new System.Xml.XmlDocument();

            doc.LoadXml(XmlConsts.internalEllXml);

            var type    = GetType(typeof(mdoc.Test2.InternalEIICalss));
            var docEnum = new DocumentationEnumerator();

            var delList = DocUtils.RemoveInvalidAssemblyInfo(doc.DocumentElement, false, "Type");

            Assert.IsTrue(delList.Count == 1);

            foreach (DocsNodeInfo info in docEnum.GetDocumentationMembers(doc, type, FrameworkTypeEntry.Empty))
            {
                delList.AddRange(DocUtils.RemoveInvalidAssemblyInfo(info.Node, false, "Member"));
            }

            Assert.IsTrue(delList.Count == 2);

            ///Note : (The following operation will not be carried out, just prompt)
            //   foreach (var delitem in delList)
            // delitem.ParentNode.RemoveChild(child);
        }