use std::time::Duration;
use cue_sdk::{DeviceType, SdkError, Version};
#[test]
fn sdk_smoke_test() {
let session = cue_sdk::connect().expect("connect() should succeed even without iCUE");
let details = session
.details()
.expect("details() should succeed after connect()");
assert_eq!(
details.client_version.major, 4,
"expected client SDK major version 4, got {}",
details.client_version
);
let zero = Version {
major: 0,
minor: 0,
patch: 0,
};
assert_eq!(
details.server_version, zero,
"expected zeroed server version without iCUE, got {}",
details.server_version
);
let result = session.wait_for_connection(Duration::from_millis(500));
assert_eq!(
result.unwrap_err(),
SdkError::NotConnected,
"expected NotConnected when iCUE is not running"
);
let devices_result = session.get_devices(DeviceType::ALL);
assert!(
devices_result.is_err(),
"get_devices should fail when not connected to iCUE"
);
}