#![cfg(feature = "ocr")]
use std::path::PathBuf;
use steeldb::ocr::OcrEngine;
#[test]
fn ocr_recovers_text() {
let img = match std::env::var("STEELDB_OCR_TEST_IMG") {
Ok(p) => PathBuf::from(p),
Err(_) => {
eprintln!("skip: set STEELDB_OCR_TEST_IMG to a page PNG");
return;
}
};
let mut eng = match OcrEngine::default_engine() {
Some(e) => e,
None => {
eprintln!("skip: OCR models absent");
return;
}
};
let text = eng.ocr_path(&img).expect("ocr");
eprintln!("--- OCR ({} chars) ---\n{}", text.len(), text.chars().take(1500).collect::<String>());
assert!(!text.trim().is_empty(), "expected recognized text");
}