Files
digital-drosophila/models/male-cns-lif/normal-conditioning-v1/run_cpu_tests.py
T
2026-09-30 21:00:33 +08:00

31 lines
1.5 KiB
Python

"""Exclusive CPU/source test receipt. No scientific execution or CUDA allowed."""
import argparse
import io
import os
from pathlib import Path
import sys
import time
import unittest
from normal_io import digest, save, require, MODEL
def run(output):
require(sys.dont_write_bytecode,'Use -B')
os.environ['CUDA_VISIBLE_DEVICES']=''
before={p.name:digest(p) for p in MODEL.iterdir() if p.is_file()}
suite=unittest.defaultTestLoader.discover(str(MODEL),pattern='test_*.py')
text=io.StringIO();start=time.perf_counter()
result=unittest.TextTestRunner(stream=text,verbosity=2).run(suite)
after={p.name:digest(p) for p in MODEL.iterdir() if p.is_file()}
no_neural_modules=not any(n in sys.modules for n in ('torch','runtime_light','conditioning_epoch'))
success=result.wasSuccessful() and not result.skipped and before==after and no_neural_modules
save(output,dict(schema='normal-CPU-tests-v1',pass_all=success,tests=result.testsRun,
failures=len(result.failures),errors=len(result.errors),skips=len(result.skipped),
source_sha256=before,sources_unchanged=before==after,wall_seconds=time.perf_counter()-start,
stdout=text.getvalue(),fresh_process=True,CUDA_hidden=True,no_neural_modules=no_neural_modules,
scope='CPU source and mock-process tests; not real GPU numerical or scientific evidence'))
return success
if __name__=='__main__':
p=argparse.ArgumentParser();p.add_argument('--output',required=True)
sys.exit(0 if run(p.parse_args().output) else 1)