summaryrefslogtreecommitdiff
path: root/debian/tests/upstream.py
diff options
context:
space:
mode:
Diffstat (limited to 'debian/tests/upstream.py')
-rw-r--r--debian/tests/upstream.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/debian/tests/upstream.py b/debian/tests/upstream.py
new file mode 100644
index 00000000..a1b7af1b
--- /dev/null
+++ b/debian/tests/upstream.py
@@ -0,0 +1,42 @@
+import importlib
+import os
+import sys
+
+blacklist = {"test_wasserstein_distance", "test_wasserstein_barycenter"}
+
+testdir = sys.argv[1]
+sys.path.append(testdir)
+
+results = []
+with os.scandir(testdir) as it:
+ for entry in it:
+ if entry.is_file() and entry.name.startswith("test_") and entry.name.endswith(".py"):
+ name = entry.name.rstrip(".py")
+
+ if name in blacklist:
+ print("Skipping tests in %s due to blacklist." %(name))
+ else:
+ print("Running tests from %s." %(name))
+
+ module = importlib.import_module(name)
+
+ tests = [f for f in dir(module) if str(f).startswith("test_")]
+ for t in tests:
+ func = getattr(module, t)
+ if callable(func):
+ print(" ", t)
+ ok = True
+ try:
+ func()
+ except AssertionError:
+ ok = False
+ if ok:
+ print(" OK!")
+ else:
+ print(" FAIL!")
+ results.append(ok)
+
+if all(results):
+ exit(0)
+else:
+ exit(1)