Skip to content

Commit 06a600c

Browse files
committed
Set up automated coverage reports for Go
Copied from #6148
1 parent a31f946 commit 06a600c

File tree

6 files changed

+23
-3
lines changed

6 files changed

+23
-3
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
CWE,Sink identifier,Label
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Framework name,URL,Package prefixes

go/ql/src/meta/frameworks/Coverage.ql

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/**
2+
* @name Framework coverage
3+
* @description The number of API endpoints covered by MaD models sorted by
4+
* package and source-, sink-, and summary-kind.
5+
* @kind table
6+
* @id go/meta/framework-coverage
7+
*/
8+
9+
import go
10+
import semmle.go.dataflow.ExternalFlow
11+
12+
from string package, int pkgs, string kind, string part, int n
13+
where modelCoverage(package, pkgs, kind, part, n)
14+
select package, pkgs, kind, part, n

misc/scripts/library-coverage/generate-report.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,9 @@ def add_package_stats_to_row(row, sorted_cwes, collect):
114114
utils.LanguageConfig(
115115
"java", "Java", ".java", query_prefix + "java/ql/src/meta/frameworks/Coverage.ql"),
116116
utils.LanguageConfig(
117-
"csharp", "C#", ".cs", query_prefix + "csharp/ql/src/meta/frameworks/Coverage.ql")
117+
"csharp", "C#", ".cs", query_prefix + "csharp/ql/src/meta/frameworks/Coverage.ql"),
118+
utils.LanguageConfig(
119+
"go", "Go", ".go", query_prefix + "go/ql/src/meta/frameworks/Coverage.ql")
118120
]
119121

120122
# The names of input and output files. The placeholder {language} is replaced with the language name.

misc/scripts/library-coverage/generate-timeseries.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,9 @@ def get_packages(config, search_path):
7474
utils.LanguageConfig(
7575
"java", "Java", ".java", "java/ql/src/meta/frameworks/Coverage.ql", ["java/ql/lib/config/semmlecode.dbscheme", "java/ql/src/config/semmlecode.dbscheme"]),
7676
utils.LanguageConfig(
77-
"csharp", "C#", ".cs", "csharp/ql/src/meta/frameworks/Coverage.ql", ["csharp/ql/lib/semmlecode.csharp.dbscheme", "csharp/ql/src/semmlecode.csharp.dbscheme"])
77+
"csharp", "C#", ".cs", "csharp/ql/src/meta/frameworks/Coverage.ql", ["csharp/ql/lib/semmlecode.csharp.dbscheme", "csharp/ql/src/semmlecode.csharp.dbscheme"]),
78+
utils.LanguageConfig(
79+
"go", "Go", ".go", "go/ql/src/meta/frameworks/Coverage.ql", ["go/ql/lib/go.dbscheme", "go/ql/src/go.dbscheme"])
7880
]
7981

8082
output_prefix = "framework-coverage-timeseries-"

misc/scripts/library-coverage/settings.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,4 @@
2121
repo_output_rst = documentation_folder + output_rst_file_name
2222
repo_output_csv = documentation_folder + output_csv_file_name
2323

24-
languages = ['java', 'csharp']
24+
languages = ['java', 'csharp', 'go']

0 commit comments

Comments
 (0)