1 #include <gtk/gtk.h>
2
3 static void
check_button_role(void)4 check_button_role (void)
5 {
6 GtkWidget *button = gtk_check_button_new ();
7 g_object_ref_sink (button);
8
9 gtk_test_accessible_assert_role (button, GTK_ACCESSIBLE_ROLE_CHECKBOX);
10
11 g_object_unref (button);
12 }
13
14 static void
check_button_checked(void)15 check_button_checked (void)
16 {
17 GtkWidget *button = gtk_check_button_new ();
18 g_object_ref_sink (button);
19
20 gtk_test_accessible_assert_state (button, GTK_ACCESSIBLE_STATE_CHECKED, GTK_ACCESSIBLE_TRISTATE_FALSE);
21
22 gtk_check_button_set_active (GTK_CHECK_BUTTON (button), TRUE);
23
24 gtk_test_accessible_assert_state (button, GTK_ACCESSIBLE_STATE_CHECKED, GTK_ACCESSIBLE_TRISTATE_TRUE);
25
26 gtk_check_button_set_inconsistent (GTK_CHECK_BUTTON (button), TRUE);
27
28 gtk_test_accessible_assert_state (button, GTK_ACCESSIBLE_STATE_CHECKED, GTK_ACCESSIBLE_TRISTATE_MIXED);
29
30 g_object_unref (button);
31 }
32
33 static void
check_button_label(void)34 check_button_label (void)
35 {
36 GtkWidget *button = gtk_check_button_new_with_label ("Hello");
37 g_object_ref_sink (button);
38
39 gtk_test_accessible_assert_property (button, GTK_ACCESSIBLE_PROPERTY_LABEL, "Hello");
40
41 g_object_unref (button);
42 }
43
44 int
main(int argc,char * argv[])45 main (int argc, char *argv[])
46 {
47 gtk_test_init (&argc, &argv, NULL);
48
49 g_test_add_func ("/a11y/checkbutton/role", check_button_role);
50 g_test_add_func ("/a11y/checkbutton/checked", check_button_checked);
51 g_test_add_func ("/a11y/checkbutton/label", check_button_label);
52
53 return g_test_run ();
54 }
55