38 lines
1.2 KiB
Rust
38 lines
1.2 KiB
Rust
#[cfg(test)]
|
|
mod tests {
|
|
use crate::{AXElement, MacAxController};
|
|
|
|
#[test]
|
|
fn test_ax_element_to_string() {
|
|
let element = AXElement {
|
|
role: "button".to_string(),
|
|
title: Some("Click Me".to_string()),
|
|
value: None,
|
|
label: Some("Submit Button".to_string()),
|
|
identifier: Some("submitBtn".to_string()),
|
|
enabled: true,
|
|
focused: false,
|
|
position: Some((100.0, 200.0)),
|
|
size: Some((80.0, 30.0)),
|
|
children_count: 0,
|
|
};
|
|
|
|
let string_repr = element.to_string();
|
|
assert!(string_repr.contains("Role: button"));
|
|
assert!(string_repr.contains("Title: Click Me"));
|
|
assert!(string_repr.contains("Label: Submit Button"));
|
|
assert!(string_repr.contains("ID: submitBtn"));
|
|
assert!(string_repr.contains("Enabled: true"));
|
|
assert!(string_repr.contains("Position: (100, 200)"));
|
|
assert!(string_repr.contains("Size: (80, 30)"));
|
|
}
|
|
|
|
#[test]
|
|
fn test_controller_creation() {
|
|
// Just test that we can create a controller
|
|
// Actual functionality requires macOS and permissions
|
|
let result = MacAxController::new();
|
|
assert!(result.is_ok());
|
|
}
|
|
}
|