


# gtk-unit-test.pkg
# Compiled by:
# src/lib/test/unit-tests.lib# Run by:
# src/lib/test/all-unit-tests.pkg# Unit tests for:
# src/lib/src/gtk.pkgpackage gtk_unit_test {
#
include unit_test; # unit_test is from src/lib/src/unit-test.pkg #
include gtk; # gtk is from src/lib/src/gtk.pkg name = "src/lib/src/gtk-unit-test.pkg";
fun run ()
=
{
printf "\nDoing %s:\n" name;
session = make_session []; # make_session
window = make_window session;
set_delete_event_callback session window .{ print "Received DELETE_EVENT on main window.\n"; };
# set_destroy_callback session window .{ exit_main session; exit 0; };
set_border_width (session, window, 10);
button = make_button_with_label (session, "Hello World");
set_clicked_callback session button .{ print "Hello, world!\n"; destroy_widget( session, window ); };
add_kid { session, kid => button, mom => window };
show_widget (session, button);
show_widget (session, window);
# As yet we have no way to press a button and
# check that it was pushed, alas:
# (Much later -- 2011-10-22 CrT):
# It appears that perhaps the call for doing this may be
#
# gtk_test_widget_click http://developer.gnome.org/gtk/2.24/gtk-Testing.html#gtk-test-widget-click
#
# or maybe
#
# gdk_test_simulate_button http://developer.gnome.org/gdk/stable/gdk-Testing.html
# press_button (session, button);
#
# run_eventloop_indefinitely session;
assert TRUE;
summarize_unit_tests name;
};
};
## Code by Jeff Prothero: Copyright (c) 2010-2012,
## released under Gnu Public Licence version 3.


