File tree Expand file tree Collapse file tree 1 file changed +49
-0
lines changed Expand file tree Collapse file tree 1 file changed +49
-0
lines changed Original file line number Diff line number Diff line change
1
+ # Copyright (C) 2019-2024 Intel Corporation
2
+ # SPDX-License-Identifier: BSD-3-Clause
3
+
4
+ import logging
5
+ import math
6
+ import unittest
7
+
8
+ from codebasin .report import coverage
9
+
10
+
11
+ class TestCoverage (unittest .TestCase ):
12
+ """
13
+ Test computation of coverage.
14
+ """
15
+
16
+ def setUp (self ):
17
+ logging .disable ()
18
+
19
+ def test_coverage (self ):
20
+ """Check coverage computation for simple setmap."""
21
+ setmap = {
22
+ frozenset (["A" ]): 1 ,
23
+ frozenset (["B" ]): 2 ,
24
+ frozenset (["A" , "B" ]): 3 ,
25
+ frozenset ([]): 4 ,
26
+ }
27
+ used_sloc = 1 + 2 + 3
28
+ total_sloc = 1 + 2 + 3 + 4
29
+
30
+ expected_coverage = used_sloc / total_sloc * 100.0
31
+ self .assertEqual (coverage (setmap ), expected_coverage )
32
+ self .assertEqual (coverage (setmap , ["A" , "B" ]), expected_coverage )
33
+
34
+ expected_a = (1 + 3 ) / total_sloc * 100.0
35
+ self .assertEqual (coverage (setmap , ["A" ]), expected_a )
36
+
37
+ expected_b = (2 + 3 ) / total_sloc * 100.0
38
+ self .assertEqual (coverage (setmap , ["B" ]), expected_b )
39
+
40
+ def test_null_coverage (self ):
41
+ """Check coverage computation for null cases."""
42
+ setmap = {
43
+ frozenset ("" ): 0 ,
44
+ }
45
+ self .assertTrue (math .isnan (coverage (setmap )))
46
+
47
+
48
+ if __name__ == "__main__" :
49
+ unittest .main ()
You can’t perform that action at this time.
0 commit comments