@@ -10,6 +10,34 @@ public void TestFormat()
10
10
{
11
11
CoverageResult result = new CoverageResult ( ) ;
12
12
result . Identifier = Guid . NewGuid ( ) . ToString ( ) ;
13
+
14
+ result . Modules = new Modules ( ) ;
15
+ result . Modules . Add ( "Coverlet.Core.Reporters.Tests" , CreateFirstDocuments ( ) ) ;
16
+
17
+ OpenCoverReporter reporter = new OpenCoverReporter ( ) ;
18
+ Assert . NotEqual ( string . Empty , reporter . Format ( result ) ) ;
19
+ }
20
+
21
+ [ Fact ]
22
+ public void TestFilesHaveUniqueIdsOverMultipleModules ( )
23
+ {
24
+ CoverageResult result = new CoverageResult ( ) ;
25
+ result . Identifier = Guid . NewGuid ( ) . ToString ( ) ;
26
+
27
+ result . Modules = new Modules ( ) ;
28
+ result . Modules . Add ( "Coverlet.Core.Reporters.Tests" , CreateFirstDocuments ( ) ) ;
29
+ result . Modules . Add ( "Some.Other.Module" , CreateSecondDocuments ( ) ) ;
30
+
31
+ OpenCoverReporter reporter = new OpenCoverReporter ( ) ;
32
+ var xml = reporter . Format ( result ) ;
33
+ Assert . NotEqual ( string . Empty , xml ) ;
34
+
35
+ Assert . Contains ( @"<FileRef uid=""1"" />" , xml ) ;
36
+ Assert . Contains ( @"<FileRef uid=""2"" />" , xml ) ;
37
+ }
38
+
39
+ private static Documents CreateFirstDocuments ( )
40
+ {
13
41
Lines lines = new Lines ( ) ;
14
42
lines . Add ( 1 , 1 ) ;
15
43
lines . Add ( 2 , 0 ) ;
@@ -19,11 +47,25 @@ public void TestFormat()
19
47
classes . Add ( "Coverlet.Core.Reporters.Tests.OpenCoverReporterTests" , methods ) ;
20
48
Documents documents = new Documents ( ) ;
21
49
documents . Add ( "doc.cs" , classes ) ;
22
- result . Modules = new Modules ( ) ;
23
- result . Modules . Add ( "module" , documents ) ;
50
+ return documents ;
51
+ }
24
52
25
- OpenCoverReporter reporter = new OpenCoverReporter ( ) ;
26
- Assert . NotEqual ( string . Empty , reporter . Format ( result ) ) ;
53
+ private static Documents CreateSecondDocuments ( )
54
+ {
55
+ Lines lines = new Lines ( ) ;
56
+ lines . Add ( 1 , 1 ) ;
57
+ lines . Add ( 2 , 0 ) ;
58
+
59
+ Methods methods = new Methods ( ) ;
60
+ methods . Add ( "System.Void Some.Other.Module.TestClass.TestMethod()" , lines ) ;
61
+
62
+ Classes classes2 = new Classes ( ) ;
63
+ classes2 . Add ( "Some.Other.Module.TestClass" , methods ) ;
64
+
65
+ var documents = new Documents ( ) ;
66
+ documents . Add ( "TestClass.cs" , classes2 ) ;
67
+
68
+ return documents ;
27
69
}
28
70
}
29
71
}
0 commit comments