public void CanParseDotCoverFiles(TestFile dotCoverTestFile) { using (var xmlStream = TestFilesFactory.GetTestFileStream(dotCoverTestFile)) { var parser = new DotCoverParser(xmlStream); var dotCoverReport = parser.ParseDotCoverReport(); Assert.NotNull(dotCoverReport); Assert.NotEmpty(dotCoverReport.Assemblies); } }
public void XmlExceptionForRandomInputStream() { var random = new Random(); var bytes = new byte[1024]; random.NextBytes(bytes); var memStream = new MemoryStream(bytes); var parser = new DotCoverParser(memStream); Assert.Throws <System.Xml.XmlException>(() => parser.ParseDotCoverReport()); }
public void ArgumentExceptionForNonDotCoverReport() { using (var memStream = new MemoryStream()) { var xDoc = new XDocument(); xDoc.Declaration = new XDeclaration("1.0", "utf-8", "true"); xDoc.Add(new XElement("NotWhatYouExpected")); xDoc.Save(memStream); memStream.Position = 0; var parser = new DotCoverParser(memStream); Assert.Throws <ArgumentException>(() => parser.ParseDotCoverReport()); } }
public void CanConvertDotCoverFiles(TestFile dotCoverTestFile) { using (var xmlStream = TestFilesFactory.GetTestFileStream(dotCoverTestFile)) { var parser = new DotCoverParser(xmlStream); var dotCoverReport = parser.ParseDotCoverReport(); var converter = new DotCoverToCoberturaConverter(dotCoverReport); var conversionResult = converter.ConvertToCobertura(); Assert.NotNull(conversionResult); Assert.NotEmpty(conversionResult.Packages); } }
public void CanRead() { using (var xmlStream = TestFilesFactory.GetTestFileStream(DotCoverConverter.Core.Tests.TestFile.RegressionDotCoverMethodInfoExtractor)) { var parser = new DotCoverParser(xmlStream); var dotCoverReport = parser.ParseDotCoverReport(); Assert.NotNull(dotCoverReport); Assert.NotEmpty(dotCoverReport.Assemblies); Assert.NotEmpty(dotCoverReport.Assemblies .SelectMany(a => a.Namespaces) .SelectMany(n => n.Types) .SelectMany(t => t.Methods)); } }
public void ParsesFileCorrect() { var testFile = TestFile.DanglCalculatorDotCover; using (var xmlStream = TestFilesFactory.GetTestFileStream(testFile)) { var parser = new DotCoverParser(xmlStream); var dotCoverReport = parser.ParseDotCoverReport(); Assert.Equal(6, dotCoverReport.Files.Count); Assert.Equal(2, dotCoverReport.Assemblies.Count); Assert.Equal("Dangl.Calculator", dotCoverReport.Assemblies.First().Name); Assert.Equal(203, dotCoverReport.Assemblies.First().CoveredStatements); Assert.Single(dotCoverReport.Assemblies.First().Namespaces); } }
public void PutsFilenameOnNestedType() { using (var xmlStream = TestFilesFactory.GetTestFileStream(TestFile.NestedClassesDotCover)) { var parser = new DotCoverParser(xmlStream); var dotCoverReport = parser.ParseDotCoverReport(); var converter = new DotCoverToCoberturaConverter(dotCoverReport); var conversionResult = converter.ConvertToCobertura(); var classes = conversionResult.Packages .SelectMany(p => p.Classes) .ToList(); Assert.All(classes, c => Assert.False(string.IsNullOrWhiteSpace(c.FileName))); Assert.Equal(2, classes.Count); Assert.All(classes, c => Assert.NotEqual("TypeWithoutStatements", c.Name)); // This type should not be in the Cobertura report due to missing filename } }
public void ParsesFileWithNestedClasses() { var testFile = TestFile.NestedClassesDotCover; using (var xmlStream = TestFilesFactory.GetTestFileStream(testFile)) { var parser = new DotCoverParser(xmlStream); var dotCoverReport = parser.ParseDotCoverReport(); Assert.Single(dotCoverReport.Files); var assembly = dotCoverReport.Assemblies.Single(); var @namespace = assembly.Namespaces.Single(); var types = @namespace.Types; Assert.Equal(3, types.Count); var typeWithoutStatements = types.First(t => t.Name == "TypeWithoutStatements"); Assert.Empty(typeWithoutStatements.Methods.SelectMany(m => m.Statements)); } }