[ci] prevent C API tests from leaving files behind (fixes #6361) (#6637)

This commit is contained in:
James Lamb 2024-09-03 22:30:30 -05:00 коммит произвёл GitHub
Родитель 3ccdea1a08
Коммит 41ba9e8f00
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
1 изменённых файлов: 7 добавлений и 7 удалений

Просмотреть файл

@ -25,7 +25,7 @@ dtype_int64 = 3
def c_str(string): def c_str(string):
return ctypes.c_char_p(string.encode("utf-8")) return ctypes.c_char_p(str(string).encode("utf-8"))
def load_from_file(filename, reference): def load_from_file(filename, reference):
@ -203,8 +203,8 @@ def test_booster(tmp_path):
LIB.LGBM_BoosterCreateFromModelfile(c_str(str(model_path)), ctypes.byref(num_total_model), ctypes.byref(booster2)) LIB.LGBM_BoosterCreateFromModelfile(c_str(str(model_path)), ctypes.byref(num_total_model), ctypes.byref(booster2))
data = np.loadtxt(str(binary_example_dir / "binary.test"), dtype=np.float64) data = np.loadtxt(str(binary_example_dir / "binary.test"), dtype=np.float64)
mat = data[:, 1:] mat = data[:, 1:]
preb = np.empty(mat.shape[0], dtype=np.float64) preds = np.empty(mat.shape[0], dtype=np.float64)
num_preb = ctypes.c_int64(0) num_preds = ctypes.c_int64(0)
data = np.asarray(mat.reshape(mat.size), dtype=np.float64) data = np.asarray(mat.reshape(mat.size), dtype=np.float64)
LIB.LGBM_BoosterPredictForMat( LIB.LGBM_BoosterPredictForMat(
booster2, booster2,
@ -217,8 +217,8 @@ def test_booster(tmp_path):
ctypes.c_int(0), ctypes.c_int(0),
ctypes.c_int(25), ctypes.c_int(25),
c_str(""), c_str(""),
ctypes.byref(num_preb), ctypes.byref(num_preds),
preb.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), preds.ctypes.data_as(ctypes.POINTER(ctypes.c_double)),
) )
LIB.LGBM_BoosterPredictForFile( LIB.LGBM_BoosterPredictForFile(
booster2, booster2,
@ -228,7 +228,7 @@ def test_booster(tmp_path):
ctypes.c_int(0), ctypes.c_int(0),
ctypes.c_int(25), ctypes.c_int(25),
c_str(""), c_str(""),
c_str("preb.txt"), c_str(tmp_path / "preds.txt"),
) )
LIB.LGBM_BoosterPredictForFile( LIB.LGBM_BoosterPredictForFile(
booster2, booster2,
@ -238,7 +238,7 @@ def test_booster(tmp_path):
ctypes.c_int(10), ctypes.c_int(10),
ctypes.c_int(25), ctypes.c_int(25),
c_str(""), c_str(""),
c_str("preb.txt"), c_str(tmp_path / "preds.txt"),
) )
LIB.LGBM_BoosterFree(booster2) LIB.LGBM_BoosterFree(booster2)