[docs]defload_model_tests(data_dir:str=DATA_DIR,kind:str|None=None,)->list[TestCase]:"""Load model test cases from on-disk data files."""supported_kinds=os.listdir(data_dir)ifkindnotinsupported_kinds:raiseValueError(f"kind must be one of {supported_kinds}")testcases=[]kind_dir=os.path.join(data_dir,kind)fortest_nameinos.listdir(kind_dir):case_dir=os.path.join(kind_dir,test_name)# skip the non-dir files, such as generated __init__.py.rtol=1e-3atol=1e-7ifnotos.path.isdir(case_dir):continueifos.path.exists(os.path.join(case_dir,"model.onnx")):url=Nonemodel_name=test_name[len("test_")]model_dir:str|None=case_dirifos.path.exists(os.path.join(case_dir,"data.json")):withopen(os.path.join(case_dir,"data.json"))asf:data=json.load(f)rtol=data.get("rtol",rtol)atol=data.get("atol",atol)else:withopen(os.path.join(case_dir,"data.json"))asf:data=json.load(f)url=data["url"]model_name=data["model_name"]rtol=data.get("rtol",rtol)atol=data.get("atol",atol)model_dir=Nonetestcases.append(TestCase(name=test_name,url=url,model_name=model_name,model_dir=model_dir,model=None,data_sets=None,kind=kind,rtol=rtol,atol=atol,))returntestcases