public CoverageLine(CoverageMethod parentMethod, int lineNumber, IEnumerable<XElement> sequenceElements) { ParentMethod = parentMethod; LineNumber = lineNumber; SequencePoints = from pt in sequenceElements select new CoverageSequencePoint(this, pt); }
// private void CompareClasses() // { // foreach (var currentClass in _current.Classes) // { // var prevClass = _prev.Classes[currentClass.Name]; // if (prevClass == null) // { // ReportLine(ConsoleColor.Green, "+ {0} (#{1})", currentClass.Name, currentClass.UnvisitedPoints); // } // else if (currentClass.UnvisitedPoints > prevClass.UnvisitedPoints) // { // ReportLine(ConsoleColor.Green, "{0} (#{1})", currentClass.Name, currentClass.UnvisitedPoints - prevClass.UnvisitedPoints); // CompareMethods(currentClass, prevClass); // } // } // } // private void CompareMethods(CoverageClass currentClass, CoverageClass prevClass) // { // foreach (var currentMethod in currentClass.Methods) // { // var prevMethod = prevClass[currentMethod.Name]; // if (prevMethod == null) // { // ReportLine(ConsoleColor.White, " + {0} (#{1})", currentMethod.Name, currentMethod.UnvisitedPoints); // } // else if (currentMethod.UnvisitedPoints > prevMethod.UnvisitedPoints) // { // ReportLine(ConsoleColor.White, " {0} (#{1})", currentMethod.Name, currentMethod.UnvisitedPoints - prevMethod.UnvisitedPoints); // // CompareLines(currentMethod); // } // } // } private void CompareLines(CoverageMethod currentMethod) { foreach (var line in currentMethod.Lines) { var srcFileName = _current.Documents[line.DocumentId].Url; using (var srcFileStream = new FileStream(srcFileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) using (var srcFile = new StreamReader(srcFileStream)) { int i = 0; while (i < line.LineNumber - 1 && !srcFile.EndOfStream) { i++; srcFile.ReadLine(); } } } }
public ComparedMethod(ComparedClass parentClass, CoverageMethod currentMethod, CoverageMethod prevMethod) { ParentClass = parentClass; CurrentMethod = currentMethod; PrevMethod = prevMethod; if (PrevMethod != null) ComparedLines = from m in CurrentMethod.Lines select new ComparedLine(this, m, PrevMethod[m.LineNumber]); }