diff options
author | Joel Martinez <joelmartinez@gmail.com> | 2020-03-30 23:00:38 +0300 |
---|---|---|
committer | Joel Martinez <joelmartinez@gmail.com> | 2020-03-30 23:40:06 +0300 |
commit | 09e6381701d885b10c42f370af02180782095ecc (patch) | |
tree | 836fb0c9965460495fdf94d05f892812b9bcffe0 | |
parent | e934e6b249a80f9da1dfba1ecc031112a731f213 (diff) |
5.7.5.3 pre-release hotfix 2.mdoc-5.7.5.3
Excludes private EII from frameworks cache
-rw-r--r-- | mdoc/Mono.Documentation/MDocUpdater.cs | 8 | ||||
-rw-r--r-- | mdoc/mdoc.Test/MDocUpdaterTests.cs | 11 |
2 files changed, 9 insertions, 10 deletions
diff --git a/mdoc/Mono.Documentation/MDocUpdater.cs b/mdoc/Mono.Documentation/MDocUpdater.cs index b78c8a57..5433e9ac 100644 --- a/mdoc/Mono.Documentation/MDocUpdater.cs +++ b/mdoc/Mono.Documentation/MDocUpdater.cs @@ -457,7 +457,7 @@ namespace Mono.Documentation foreach (var type in assembly.GetTypes()) { var t = a.ProcessType(type, assembly); - foreach (var member in type.GetMembers().Where(i => !DocUtils.IsIgnored(i))) + foreach (var member in type.GetMembers().Where(i => !DocUtils.IsIgnored(i) && IsMemberNotPrivateEII(i))) t.ProcessMember(member); } } @@ -1642,7 +1642,7 @@ namespace Mono.Documentation oldmember2 = null; // Deleted (or signature changed, or existing member is EII to a private interface) - if (oldmember2 == null || !IsMemberPublicEII(oldmember2)) + if (oldmember2 == null || !IsMemberNotPrivateEII(oldmember2)) { if (!string.IsNullOrWhiteSpace (FrameworksPath)) { @@ -1796,7 +1796,7 @@ namespace Mono.Documentation // member of an internal interface, in which case we shouldn't return true. - if (!IsMemberPublicEII(m)) + if (!IsMemberNotPrivateEII(m)) return false; return true; @@ -1920,7 +1920,7 @@ namespace Mono.Documentation } }
- private static bool IsMemberPublicEII(MemberReference m)
+ public static bool IsMemberNotPrivateEII(MemberReference m)
{
MethodDefinition methdef = null;
if (m is MethodDefinition)
diff --git a/mdoc/mdoc.Test/MDocUpdaterTests.cs b/mdoc/mdoc.Test/MDocUpdaterTests.cs index 0a4f28c7..3cbd8040 100644 --- a/mdoc/mdoc.Test/MDocUpdaterTests.cs +++ b/mdoc/mdoc.Test/MDocUpdaterTests.cs @@ -49,7 +49,7 @@ namespace mdoc.Test } [Test] - public void InterNalELLTest() + public void InternalEIITest() { XmlDocument doc = new System.Xml.XmlDocument(); doc.LoadXml(XmlConsts.internalEllXml); @@ -58,22 +58,21 @@ namespace mdoc.Test var type = GetType(typeof(mdoc.Test2.InternalEIICalss)); var docEnum = new DocumentationEnumerator(); - BindingFlags flags = BindingFlags.NonPublic | BindingFlags.Static; - MethodInfo mInfo = typeof(MDocUpdater).GetMethod("IsMemberPublicEII", flags); - + bool internalEIIflagged = false; foreach (DocsNodeInfo info in docEnum.GetDocumentationMembers(doc, type, FrameworkTypeEntry.Empty)) { - object[] parametors = new object[] { info.Member }; - var flag = (bool)mInfo.Invoke(null, parametors); + 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); } |