1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
#![warn(missing_docs)] //! Crate to test UI interactions with [gtk-rs] crates. //! //! [gtk-rs]: https://gtk-rs.org //! //! Small example: //! //! ``` //! extern crate gtk; //! #[macro_use] //! extern crate gtk_test; //! //! use gtk::{ButtonExt, ContainerExt, GtkWindowExt, LabelExt, WidgetExt}; //! //! # fn main() { //! gtk::init().expect("GTK init failed"); //! //! let win = gtk::Window::new(gtk::WindowType::Toplevel); //! let but = gtk::Button::new(); //! //! but.set_label(""); // Otherwise, assert_label! call will fail. //! but.connect_clicked(|b| { //! b.set_label("clicked!"); //! }); //! //! win.add(&but); //! win.show_all(); //! win.activate_focus(); // Very important, otherwise tests will fail on OSX! //! //! assert_label!(but, ""); //! gtk_test::click(&but); //! gtk_test::wait(1000); // To be sure that GTK has updated the label's text. //! assert_label!(but, "clicked!"); //! # } //! ``` extern crate enigo; extern crate gdk; extern crate glib; extern crate gtk; mod macros; mod functions; mod observer; pub use functions::*; pub use observer::Observer;