diff options
| author | 2023-12-17 23:42:09 +0800 | |
|---|---|---|
| committer | 2023-12-17 23:42:09 +0800 | |
| commit | bf95e7c63aceb7b64d718dc16f007fc78c37d2a7 (patch) | |
| tree | 7780894b7e4c87a4e6773c3bce968adf1fe99408 | |
| parent | 037a5b0e2c1ec9ffa8f0837d019ec8d6ebd20a36 (diff) | |
| download | infini-bf95e7c63aceb7b64d718dc16f007fc78c37d2a7.tar.gz infini-bf95e7c63aceb7b64d718dc16f007fc78c37d2a7.zip | |
:recycle: 优化测试模式
| -rw-r--r-- | src/infini/__main__.py | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/infini/__main__.py b/src/infini/__main__.py index c02824d5..97e70b45 100644 --- a/src/infini/__main__.py +++ b/src/infini/__main__.py @@ -35,25 +35,30 @@ def main(): logger.success("HydroRoll 规则包模板已创建!") if args.operate == "test": + exceptions = [] + logger.info(f"开始测试规则包: {path.name}...") loader = Loader(meta_path=path) logger.info("初始化规则包中...") + try: loader.load() except Exception as error: if args.verbose: logger.exception(error) - logger.critical(f"初始化规则包时出现异常: {error}") - return + logger.critical(f"初始化规则包时出现异常: {error}") + exceptions.append(error) + try: - errors = importlib.import_module("tests").test() + errors = importlib.import_module(f"{path.name}.tests").test() + exceptions.extend(errors) except Exception as error: if args.verbose: logger.exception(error) - logger.critical(f"测试规则包时出现异常: {error}") - return - sys.path.remove(str(path)) - logger.info(f"测试规则包 {path.name} 出现 {len(errors)} 个异常, 测试完成.") + logger.critical(f"测试规则包时出现异常: {error}") + exceptions.append(error) + + logger.info(f"测试规则包 {path.name} 出现 {len(exceptions)} 个异常, 测试完成.") if __name__ == "__main__": |
