use numrs::backend::{get_dispatch_table, validate_backends};
#[test]
fn runtime_prefers_blas_when_available() {
let validation = validate_backends();
let table = get_dispatch_table();
if validation.blas_available && validation.blas_validated {
assert!(
table.matmul_backend.contains("blas") || table.matmul_backend.contains("adaptive"),
"MatMul debe usar BLAS o 'adaptive' cuando está disponible y validado. Got: {}",
table.matmul_backend
);
println!("✅ BLAS disponible y siendo usado por matmul");
} else {
assert!(
table.matmul_backend.contains("simd") || table.matmul_backend.contains("scalar"),
"MatMul debe usar SIMD o scalar cuando BLAS no está disponible. Got: {}",
table.matmul_backend
);
println!(
"ℹ️ BLAS no disponible, usando fallback: {}",
table.matmul_backend
);
}
}