Simple test for display-less widget creation

This commit is contained in:
Matthias Clasen 2011-02-04 22:06:25 -05:00
parent 4dc9b294d8
commit 5f04bf6429
2 changed files with 51 additions and 1 deletions

View File

@ -103,7 +103,8 @@ noinst_PROGRAMS = $(TEST_PROGS) \
testswitch \
styleexamples \
testtreemenu \
testtoplevelembed
testtoplevelembed \
testnoscreen
if USE_X11
noinst_PROGRAMS += testerrors
@ -199,6 +200,7 @@ testexpander_DEPENDENCIES = $(TEST_DEPS)
testswitch_DEPENDENCIES = $(TEST_DEPS)
styleexamples_DEPENDENCIES = $(TEST_DEPS)
testtoplevelembed_DEPENDENCIES = $(TEST_DEPS)
testnoscreen_DEPENDENCIES = $(TEST_DEPS)
flicker_LDADD = $(LDADDS)
simple_LDADD = $(LDADDS)
@ -280,6 +282,7 @@ testexpander_LDADD = $(LDADDS)
testswitch_LDADD = $(LDADDS)
styleexamples_LDADD = $(LDADDS)
testtoplevelembed_LDADD = $(LDADDS)
testnoscreen_LDADD = $(LDADDS)
testentrycompletion_SOURCES = \
prop-editor.c \

47
tests/testnoscreen.c Normal file
View File

@ -0,0 +1,47 @@
/* testnoscreen.c
* Copyright (C) 2011 Red Hat, Inc.
* Authors: Matthias Clasen
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include <gtk/gtk.h>
/* Very limited test to ensure that creating widgets works
* before opening a display connection
*/
int main (int argc, char *argv[])
{
GtkWidget *window;
GtkWidget *button;
GdkDisplay *display;
gtk_parse_args (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
button = gtk_button_new ();
gtk_container_add (GTK_CONTAINER (window), button);
display = gdk_display_open (NULL);
gtk_window_set_screen (GTK_WINDOW (window), gdk_display_get_default_screen (display));
gtk_widget_show_all (window);
gtk_main ();
return 0;
}