コード例 #1
0
        public void AggregateLineCoverages()
        {
            var coverageRate = new CoverageRate(string.Empty, 0);

            coverageRate.AddChild(CreateModule(
                                      file1,
                                      new LineCoverage(1, true),
                                      new LineCoverage(2, true),
                                      new LineCoverage(3, true),
                                      new LineCoverage(4, false)));
            coverageRate.AddChild(CreateModule(
                                      file1,
                                      new LineCoverage(2, true),
                                      new LineCoverage(3, false),
                                      new LineCoverage(4, false),
                                      new LineCoverage(5, false)));

            var aggregator     = new FileCoverageAggregator();
            var coverageByFile = aggregator.Aggregate(coverageRate, str => str);
            var fileCoverage   = coverageByFile.Single();

            var expectedLineCoverages = new List <LineCoverage> {
                new LineCoverage(1, true),
                new LineCoverage(2, true),
                new LineCoverage(3, true),
                new LineCoverage(4, false),
                new LineCoverage(5, false)
            };

            CollectionAssert.AreEqual(
                expectedLineCoverages,
                fileCoverage.Value.LineCoverages.ToList(),
                new LineCoverageComparer());
        }
コード例 #2
0
        public void AggregateFileCoveragesOnly()
        {
            var coverageRate = new CoverageRate(string.Empty, 0);

            coverageRate.AddChild(CreateModule(file1.ToUpper(), file2));
            coverageRate.AddChild(CreateModule(file2.ToUpper(), file3.ToUpper()));

            var aggregator       = new FileCoverageAggregator();
            var fileCoverageDict = aggregator.Aggregate(coverageRate, str => str.ToLower());
            var fileCoverages    = fileCoverageDict.Select(kvp => kvp.Key).ToList();

            CollectionAssert.AreEquivalent(
                new List <string> {
                file1, file2, file3
            }, fileCoverages);
        }