public void TestReadHitsFile() { var tempFile = Path.GetTempFileName(); Assert.True(File.Exists(tempFile)); var lines = InstrumentationHelper.ReadHitsFile(tempFile); Assert.NotNull(lines); }
private void CalculateCoverage() { foreach (var result in _results) { if (!File.Exists(result.HitsFilePath)) { continue; } var lines = InstrumentationHelper.ReadHitsFile(result.HitsFilePath); foreach (var line in lines) { var info = line.Split(','); // Ignore malformed lines if (info.Length != 4) { continue; } var document = result.Documents.FirstOrDefault(d => d.Path == info[0]); if (document == null) { continue; } int start = int.Parse(info[1]); int end = int.Parse(info[2]); bool target = info[3] == "B"; for (int j = start; j <= end; j++) { var subLine = document.Lines.First(l => l.Number == j); subLine.Hits = subLine.Hits + 1; if (j == start) { subLine.IsBranchTarget = target; } } } InstrumentationHelper.DeleteHitsFile(result.HitsFilePath); } }