/// <summary> Builds credits text. </summary> /// /// <remarks> trond, 2013-05-01. </remarks> /// /// <returns> . </returns> private static string BuildCreditsText() { StringBuilder creditsText = new StringBuilder(); creditsText.Append(string.Format("Credits:") + Environment.NewLine); creditsText.Append( string.Format("-------------------------------------------------------------------------------") + Environment.NewLine); ICreditProvider creditProvider = new CreditProvider(); List <ICreditInfo> creditInfos = creditProvider.GetCredits(Assembly.GetEntryAssembly()); AssemblyName[] referencedAssemblies = typeof(HelpProvider).GetAssembly().GetReferencedAssemblies(); foreach (AssemblyName referencedAssembly in referencedAssemblies) { List <ICreditInfo> referencedCreditInfos = creditProvider.GetCredits(Assembly.Load(referencedAssembly)); creditInfos.AddRange(referencedCreditInfos); } foreach (var creditInfo in creditInfos) { if (!string.IsNullOrEmpty(creditInfo.CreditText)) { creditsText.Append( string.Format(" (*) For use of {0} ({1}) : {2}", creditInfo.ProductName, creditInfo.ProductHome, creditInfo.CreditText) + Environment.NewLine); } } return(creditsText.ToString()); }
public void CreditProviderGetCreditsTest() { var target = new CreditProvider(); var actual = target.GetCredits(typeof(CreditProvider).GetAssembly()); var expectedCount = 2; Assert.AreEqual(expectedCount, actual.Count, "Number of embeded credit xml is not " + expectedCount); }