コード例 #1
0
 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);
 }
コード例 #2
0
        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());
        }
コード例 #3
0
        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);
        }
コード例 #4
0
        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;
        }
コード例 #5
0
        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()));
        }
コード例 #6
0
        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);
        }
コード例 #7
0
        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);
        }
コード例 #8
0
        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);
        }
コード例 #9
0
        public void CleanupUnits(SuggestedUnitStructure aSuggestedStructure, IList <string> aIgnoredUnits)
        {
            DelphiUnitCleanerOperation vOperation = new DelphiUnitCleanerOperation();

            FileAgent.Content = vOperation.Execute(FileAgent.Content, aSuggestedStructure, aIgnoredUnits);
        }
コード例 #10
0
        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;
        }
コード例 #11
0
 public void CleanupUnits(SuggestedUnitStructure aSuggestedStructure, IList<string> aIgnoredUnits)
 {
     DelphiUnitCleanerOperation vOperation = new DelphiUnitCleanerOperation();
     FileAgent.Content = vOperation.Execute(FileAgent.Content, aSuggestedStructure, aIgnoredUnits);
 }
コード例 #12
0
 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 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);
 }
コード例 #14
0
        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));
        }