#![allow(non_upper_case_globals)] #![allow(non_camel_case_types)] #![allow(non_snake_case)] #![allow(clippy::upper_case_acronyms)] use std::env; include!(concat!(env!("OUT_DIR"), "/bindings.rs")); #[cfg(test)] mod tests { use super::*; #[test] fn read_matrix() { let dmat_train_path = "xgboost/demo/data/agaricus.txt.train"; let silent = 0; let mut handle = std::ptr::null_mut(); let fname = std::ffi::CString::new(dmat_train_path).unwrap(); let ret_val = unsafe { XGDMatrixCreateFromFile(fname.as_ptr(), silent, &mut handle) }; assert_eq!(ret_val, 0); let mut num_rows = 0; let ret_val = unsafe { XGDMatrixNumRow(handle, &mut num_rows) }; assert_eq!(ret_val, 0); assert_eq!(num_rows, 6513); let mut num_cols = 0; let ret_val = unsafe { XGDMatrixNumCol(handle, &mut num_cols) }; assert_eq!(ret_val, 0); assert_eq!(num_cols, 127); let ret_val = unsafe { XGDMatrixFree(handle) }; assert_eq!(ret_val, 0); } }