protected void CompareUnitCount(SuggestedUnitStructure iList, int iExpectedInterface, int iExpectedImplementation, int iExpectedMovedCount, int iExpectedDeletedCount, string iErrorMsg) { Assert.AreEqual(iExpectedInterface, iList.Uses.Interface.Count, "Invalid no. of returned interface units. " + iErrorMsg); Assert.AreEqual(iExpectedImplementation, iList.Uses.Implementation.Count, "Invalid no. of returned implementation units. " + iErrorMsg); Assert.AreEqual(iExpectedMovedCount, iList.MoveToInterface.Count, "Invalid no. of units moved to implementation. " + iErrorMsg); Assert.AreEqual(iExpectedDeletedCount, iList.ToDelete.Count, "Invalid no. of deleted units. " + iErrorMsg); }
protected string CleanUpInterface(string iUnitContent, string iUsesContent, SuggestedUnitStructure iSuggestedStructure) { if (iUsesContent.Trim().Equals("")) return iUnitContent; UnitList vUnits = GetUsesList(iUsesContent); RemoveUnits(vUnits, iSuggestedStructure.ToDelete); RemoveUnits(vUnits, iSuggestedStructure.MoveToInterface); return ReplaceContent(iUnitContent, iUsesContent, vUnits.ToString()); }
protected static void ExtractUnitNames(string iMatch, UsesListType iUsesType, SuggestedUnitStructure iUnitUses) { Regex vRegExpr = new Regex(@"(-->|==>)?\s?(\w+)\s(in\simplementation|in\sinterface|unnecessary|source\snot\sfound)(?=\s\(|\r\n)", RegexOptions.IgnoreCase | RegexOptions.Singleline); MatchCollection vMatches = vRegExpr.Matches(iMatch); ExtractUnitsGroup(vMatches, "", (iUsesType == UsesListType.Interface ? iUnitUses.Uses.Interface : iUnitUses.Uses.Implementation)); ExtractUnitsGroup(vMatches, "==>", iUnitUses.ToDelete); if (iUsesType == UsesListType.Interface) ExtractUnitsGroup(vMatches, "-->", iUnitUses.MoveToInterface, iUnitUses.Uses.Implementation); }
public string Execute(string iUnitContent, SuggestedUnitStructure iSuggestedStructure, IList<string> iIgnoredUnits) { string vInterface, vImplementation; SuggestedUnitStructure vSuggestedStructure = RemoveIgnoredUnits(iSuggestedStructure.Clone(), iIgnoredUnits); UsesClauseReader.ExtractUses(iUnitContent, out vInterface, out vImplementation); string vResult = iUnitContent; vResult = CleanUpInterface(vResult, vInterface, vSuggestedStructure); vResult = CleanUpImplementation(vResult, vImplementation, vSuggestedStructure); return vResult; }
protected string CleanUpInterface(string iUnitContent, string iUsesContent, SuggestedUnitStructure iSuggestedStructure) { if (iUsesContent.Trim().Equals("")) { return(iUnitContent); } UnitList vUnits = GetUsesList(iUsesContent); RemoveUnits(vUnits, iSuggestedStructure.ToDelete); RemoveUnits(vUnits, iSuggestedStructure.MoveToInterface); return(ReplaceContent(iUnitContent, iUsesContent, vUnits.ToString())); }
public string Execute(string iUnitContent, SuggestedUnitStructure iSuggestedStructure, IList <string> iIgnoredUnits) { string vInterface, vImplementation; SuggestedUnitStructure vSuggestedStructure = RemoveIgnoredUnits(iSuggestedStructure.Clone(), iIgnoredUnits); UsesClauseReader.ExtractUses(iUnitContent, out vInterface, out vImplementation); string vResult = iUnitContent; vResult = CleanUpInterface(vResult, vInterface, vSuggestedStructure); vResult = CleanUpImplementation(vResult, vImplementation, vSuggestedStructure); return(vResult); }
protected SuggestedUnitStructure RemoveIgnoredUnits(SuggestedUnitStructure iSuggestedUnitStructure, IList <string> iIgnoredUnits) { List <string> vList = new List <string>(iIgnoredUnits); for (int vUnitIdx = 0; vUnitIdx < vList.Count; vUnitIdx++) { vList[vUnitIdx] = vList[vUnitIdx].ToLower(); } SuggestedUnitStructure vResult = iSuggestedUnitStructure.Clone(); RemoveUnits(vResult.MoveToInterface, vList); RemoveUnits(vResult.ToDelete, vList); return(vResult); }
protected string CleanUpImplementation(string iUnitContent, string iUsesContent, SuggestedUnitStructure iSuggestedStructure) { UnitList vUnits = GetUsesList(iUsesContent); RemoveUnits(vUnits, iSuggestedStructure.ToDelete); AddUnits(vUnits, iSuggestedStructure.MoveToInterface); if (vUnits.Count == 0 && iUsesContent.Trim().Equals("")) return iUnitContent; string vNewValue = vUnits.ToString(); if (iUsesContent.Trim().Equals("")) { iUsesContent = "implementation"; vNewValue = "implementation\r\n\r\n" + vNewValue; } return ReplaceContent(iUnitContent, iUsesContent, vNewValue); }
public void CleanupUnits(SuggestedUnitStructure aSuggestedStructure, IList <string> aIgnoredUnits) { DelphiUnitCleanerOperation vOperation = new DelphiUnitCleanerOperation(); FileAgent.Content = vOperation.Execute(FileAgent.Content, aSuggestedStructure, aIgnoredUnits); }
protected SuggestedUnitStructure RemoveIgnoredUnits(SuggestedUnitStructure iSuggestedUnitStructure, IList<string> iIgnoredUnits) { List<string> vList = new List<string>(iIgnoredUnits); for (int vUnitIdx = 0; vUnitIdx < vList.Count; vUnitIdx++) vList[vUnitIdx] = vList[vUnitIdx].ToLower(); SuggestedUnitStructure vResult = iSuggestedUnitStructure.Clone(); RemoveUnits(vResult.MoveToInterface, vList); RemoveUnits(vResult.ToDelete, vList); return vResult; }
public void CleanupUnits(SuggestedUnitStructure aSuggestedStructure, IList<string> aIgnoredUnits) { DelphiUnitCleanerOperation vOperation = new DelphiUnitCleanerOperation(); FileAgent.Content = vOperation.Execute(FileAgent.Content, aSuggestedStructure, aIgnoredUnits); }
protected void TestExecute(string iUnitContent, SuggestedUnitStructure iSuggestedStructure, IList<string> iExpectedInterfaceUnits, IList<string> iExpectedImplementationUnits, IList<string> iIgnoredUnits, string iErrorMsg) { DelphiUnitCleanerOperation vOperation = new DelphiUnitCleanerOperation(); string vActual = vOperation.Execute(iUnitContent, iSuggestedStructure, iIgnoredUnits); CheckUses(vActual, iExpectedInterfaceUnits, iExpectedImplementationUnits, iErrorMsg); }
protected string CleanUpImplementation(string iUnitContent, string iUsesContent, SuggestedUnitStructure iSuggestedStructure) { UnitList vUnits = GetUsesList(iUsesContent); RemoveUnits(vUnits, iSuggestedStructure.ToDelete); AddUnits(vUnits, iSuggestedStructure.MoveToInterface); if (vUnits.Count == 0 && iUsesContent.Trim().Equals("")) { return(iUnitContent); } string vNewValue = vUnits.ToString(); if (iUsesContent.Trim().Equals("")) { iUsesContent = "implementation"; vNewValue = "implementation\r\n\r\n" + vNewValue; } return(ReplaceContent(iUnitContent, iUsesContent, vNewValue)); }