PreviousUpNext

15.4.876  src/lib/src/gtk-unit-test.pkg

# 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.pkg

package 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.


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext