2021-06-01 15:30:05 +02:00
|
|
|
#!/usr/bin/env python3
|
2018-08-24 01:21:35 +02:00
|
|
|
# checks if every desired package has test files
|
|
|
|
|
|
|
|
import os
|
|
|
|
import re
|
|
|
|
import sys
|
|
|
|
|
|
|
|
source_re = re.compile(".*\.go")
|
|
|
|
test_re = re.compile(".*_test\.go")
|
|
|
|
missing = False
|
|
|
|
|
|
|
|
for root, dirs, files in os.walk("."):
|
|
|
|
# ignore some paths
|
2021-06-01 15:30:05 +02:00
|
|
|
if root == "." or root.startswith("./vendor") or root.startswith("./.") or root.startswith("./docs"):
|
2018-08-24 01:21:35 +02:00
|
|
|
continue
|
|
|
|
|
|
|
|
# source files but not test files?
|
2021-06-01 15:30:05 +02:00
|
|
|
if len([f for f in files if source_re.match(f)]) > 0 and len([f for f in files if test_re.match(f)]) == 0:
|
2018-08-24 01:21:35 +02:00
|
|
|
print("no test files for {}".format(root))
|
|
|
|
missing = True
|
|
|
|
|
|
|
|
if missing:
|
|
|
|
sys.exit(1)
|
|
|
|
else:
|
|
|
|
print("every package has test files")
|
2021-06-01 15:30:05 +02:00
|
|
|
|