mirror of
https://github.com/openmv/openmv.git
synced 2025-11-04 14:49:50 +08:00
49 lines
1.2 KiB
Python
49 lines
1.2 KiB
Python
# This work is licensed under the MIT license.
|
|
# Copyright (c) 2013-2023 OpenMV LLC. All rights reserved.
|
|
# https://github.com/openmv/openmv/blob/master/LICENSE
|
|
#
|
|
# OpenMV Unit Tests.
|
|
#
|
|
import os
|
|
import gc
|
|
|
|
TEST_DIR = "unittest"
|
|
TEMP_DIR = "unittest/temp"
|
|
DATA_DIR = "unittest/data"
|
|
SCRIPT_DIR = "unittest/script"
|
|
|
|
if not (TEST_DIR in os.listdir("")):
|
|
raise Exception("Unittest dir not found!")
|
|
|
|
print("")
|
|
test_failed = False
|
|
|
|
|
|
def print_result(test, result):
|
|
s = "Unittest (%s)" % (test)
|
|
padding = "." * (60 - len(s))
|
|
print(s + padding + result)
|
|
|
|
|
|
for test in sorted(os.listdir(SCRIPT_DIR)):
|
|
if test.endswith(".py"):
|
|
test_result = "PASSED"
|
|
test_path = "/".join((SCRIPT_DIR, test))
|
|
try:
|
|
exec(open(test_path).read())
|
|
gc.collect()
|
|
if unittest(DATA_DIR, TEMP_DIR) is False:
|
|
raise Exception()
|
|
except Exception as e:
|
|
if "unavailable" in str(e):
|
|
test_result = "DISABLED"
|
|
else:
|
|
test_failed = True
|
|
test_result = "FAILED"
|
|
print_result(test, test_result)
|
|
|
|
if test_failed:
|
|
print("\nSome tests have FAILED!!!\n\n")
|
|
else:
|
|
print("\nAll tests PASSED.\n\n")
|