From 4f9a30d2aaca583d992df6dd8046e563004e13be Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 25 Apr 2012 11:09:24 -0500 Subject: We've now got a test directory! --- tests/Makefile.am | 1 + 1 file changed, 1 insertion(+) create mode 100644 tests/Makefile.am (limited to 'tests') diff --git a/tests/Makefile.am b/tests/Makefile.am new file mode 100644 index 0000000..e0b73f5 --- /dev/null +++ b/tests/Makefile.am @@ -0,0 +1 @@ +# Testing, one, two, three -- cgit v1.2.3 From 274e47788ea7e1d7cd453598715233eb99a75292 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 25 Apr 2012 11:39:52 -0500 Subject: Adding in a dummy test and the dependencies to build it --- .bzrignore | 3 +++ tests/Makefile.am | 44 +++++++++++++++++++++++++++++++++++++++++++- tests/gtest-menuitems.cpp | 8 ++++++++ 3 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 tests/gtest-menuitems.cpp (limited to 'tests') diff --git a/.bzrignore b/.bzrignore index 13b4905..95c37a1 100644 --- a/.bzrignore +++ b/.bzrignore @@ -29,3 +29,6 @@ src/libido3-0.1.la src/stamp-idotypebuiltins.h m4 m4/gtk-doc.m4 +.deps +.libs +gtest-menuitems diff --git a/tests/Makefile.am b/tests/Makefile.am index e0b73f5..8fded37 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1 +1,43 @@ -# Testing, one, two, three + +check_LIBRARIES = libgtest.a +check_PROGRAMS = +TESTS = + +AM_CPPFLAGS = \ + $(GTEST_CPPFLAGS) \ + -I${top_srcdir}/src + +############################# +# Google Test base library +############################# + +nodist_libgtest_a_SOURCES = \ + $(GTEST_SOURCE)/src/gtest-all.cc \ + $(GTEST_SOURCE)/src/gtest_main.cc +libgtest_a_CPPFLAGS = \ + $(GTEST_CPPFLAGS) -w +libgtest_a_CXXFLAGS = \ + $(AM_CXXFLAGS) +libgtest_a_CPPFLAGS = \ + $(AM_CPPFLAGS) + +############################# +# Menuitem tests +############################# + +TESTS += gtest-menuitems +check_PROGRAMS += gtest-menuitems + +gtest_menuitems_SOURCES = \ + gtest-menuitems.cpp +gtest_menuitems_CPPFLAGS = \ + $(GCC_CFLAGS) \ + $(GTK_CFLAGS) \ + $(MAINTAINER_CFLAGS) \ + $(AM_CPPFLAGS) +gtest_menuitems_LDFLAGS = \ + -pthread +gtest_menuitems_LDADD = \ + $(GTK_LIBS) \ + libgtest.a + diff --git a/tests/gtest-menuitems.cpp b/tests/gtest-menuitems.cpp new file mode 100644 index 0000000..cac28c4 --- /dev/null +++ b/tests/gtest-menuitems.cpp @@ -0,0 +1,8 @@ + +#include +#include + +TEST(StartTesting, DummyTest) { + g_type_init(); + EXPECT_TRUE(true); +} -- cgit v1.2.3 From 7db7f0e734e5c4d7dbc46fb415b8c60c3c570f8e Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 25 Apr 2012 14:12:59 -0500 Subject: Now we're allocating a calendar --- tests/Makefile.am | 8 ++++++++ tests/gtest-menuitems.cpp | 26 ++++++++++++++++++++++---- 2 files changed, 30 insertions(+), 4 deletions(-) (limited to 'tests') diff --git a/tests/Makefile.am b/tests/Makefile.am index 8fded37..03429c7 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,3 +1,10 @@ +if USE_GTK3 +VER=3 +IDOLIB = $(top_builddir)/src/libido3-0.1.la +else +VER= +IDOLIB = $(top_builddir)/src/libido-0.1.la +endif check_LIBRARIES = libgtest.a check_PROGRAMS = @@ -39,5 +46,6 @@ gtest_menuitems_LDFLAGS = \ -pthread gtest_menuitems_LDADD = \ $(GTK_LIBS) \ + $(IDOLIB) \ libgtest.a diff --git a/tests/gtest-menuitems.cpp b/tests/gtest-menuitems.cpp index cac28c4..17356fb 100644 --- a/tests/gtest-menuitems.cpp +++ b/tests/gtest-menuitems.cpp @@ -1,8 +1,26 @@ -#include +#include #include +#include "idocalendarmenuitem.h" -TEST(StartTesting, DummyTest) { - g_type_init(); - EXPECT_TRUE(true); +class TestMenuitems : public ::testing::Test +{ +public: + TestMenuitems() + { + g_type_init(); + return; + } +}; + +TEST_F(TestMenuitems, BuildCalendar) { + GtkWidget * cal = ido_calendar_menu_item_new(); + + EXPECT_TRUE(cal != NULL); + EXPECT_TRUE(IDO_IS_CALENDAR_MENU_ITEM(cal)); + EXPECT_TRUE(GTK_IS_MENU_ITEM(cal)); + + g_object_ref_sink(cal); + g_object_unref(cal); + return; } -- cgit v1.2.3 From 072a5ab6d97eda7911de3c8ec843f9368af44c61 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 25 Apr 2012 14:22:27 -0500 Subject: Now we can realize the menu item to make sure it doesn't mess that up --- tests/gtest-menuitems.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/gtest-menuitems.cpp b/tests/gtest-menuitems.cpp index 17356fb..1f3b866 100644 --- a/tests/gtest-menuitems.cpp +++ b/tests/gtest-menuitems.cpp @@ -8,7 +8,9 @@ class TestMenuitems : public ::testing::Test public: TestMenuitems() { - g_type_init(); + gint argc = 0; + gchar * argv[] = {NULL}; + gtk_init(&argc, (gchar ***)&argv); return; } }; @@ -20,6 +22,15 @@ TEST_F(TestMenuitems, BuildCalendar) { EXPECT_TRUE(IDO_IS_CALENDAR_MENU_ITEM(cal)); EXPECT_TRUE(GTK_IS_MENU_ITEM(cal)); + GtkWidget * menu = gtk_menu_new(); + gtk_widget_show(menu); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), cal); + + gtk_widget_show(cal); + gtk_widget_realize(cal); + + EXPECT_TRUE(gtk_widget_get_realized(cal)); + g_object_ref_sink(cal); g_object_unref(cal); return; -- cgit v1.2.3 From d02dfec2a8f5bb873107345b002595b7f43a010e Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 25 Apr 2012 14:32:14 -0500 Subject: Adding in the entry menuitem as well. --- tests/gtest-menuitems.cpp | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) (limited to 'tests') diff --git a/tests/gtest-menuitems.cpp b/tests/gtest-menuitems.cpp index 1f3b866..4e99cc7 100644 --- a/tests/gtest-menuitems.cpp +++ b/tests/gtest-menuitems.cpp @@ -2,6 +2,8 @@ #include #include #include "idocalendarmenuitem.h" +#include "idoentrymenuitem.h" +#include "idoscalemenuitem.h" class TestMenuitems : public ::testing::Test { @@ -31,7 +33,29 @@ TEST_F(TestMenuitems, BuildCalendar) { EXPECT_TRUE(gtk_widget_get_realized(cal)); - g_object_ref_sink(cal); - g_object_unref(cal); + g_object_ref_sink(menu); + g_object_unref(menu); return; } + +TEST_F(TestMenuitems, BuildEntry) { + GtkWidget * entry = ido_entry_menu_item_new(); + + EXPECT_TRUE(entry != NULL); + EXPECT_TRUE(IDO_IS_ENTRY_MENU_ITEM(entry)); + EXPECT_TRUE(GTK_IS_MENU_ITEM(entry)); + + GtkWidget * menu = gtk_menu_new(); + gtk_widget_show(menu); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), entry); + + gtk_widget_show(entry); + gtk_widget_realize(entry); + + EXPECT_TRUE(gtk_widget_get_realized(entry)); + + g_object_ref_sink(menu); + g_object_unref(menu); + return; +} + -- cgit v1.2.3 From 62a010afdc5c7c30db3484df181ba84de7f8912d Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 25 Apr 2012 14:41:21 -0500 Subject: Build a scale menu item as well --- tests/gtest-menuitems.cpp | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'tests') diff --git a/tests/gtest-menuitems.cpp b/tests/gtest-menuitems.cpp index 4e99cc7..269d360 100644 --- a/tests/gtest-menuitems.cpp +++ b/tests/gtest-menuitems.cpp @@ -59,3 +59,44 @@ TEST_F(TestMenuitems, BuildEntry) { return; } +TEST_F(TestMenuitems, BuildScaleDefault) { + GtkWidget * scale = ido_scale_menu_item_new("Label", IDO_RANGE_STYLE_DEFAULT, gtk_adjustment_new(0.5, 0.0, 1.0, 0.01, 0.1, 0.1)); + + EXPECT_TRUE(scale != NULL); + EXPECT_TRUE(IDO_IS_SCALE_MENU_ITEM(scale)); + EXPECT_TRUE(GTK_IS_MENU_ITEM(scale)); + + GtkWidget * menu = gtk_menu_new(); + gtk_widget_show(menu); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), scale); + + gtk_widget_show(scale); + gtk_widget_realize(scale); + + EXPECT_TRUE(gtk_widget_get_realized(scale)); + + g_object_ref_sink(menu); + g_object_unref(menu); + return; +} + +TEST_F(TestMenuitems, BuildScaleSmall) { + GtkWidget * scale = ido_scale_menu_item_new("Label", IDO_RANGE_STYLE_SMALL, gtk_adjustment_new(0.5, 0.0, 1.0, 0.01, 0.1, 0.1)); + + EXPECT_TRUE(scale != NULL); + EXPECT_TRUE(IDO_IS_SCALE_MENU_ITEM(scale)); + EXPECT_TRUE(GTK_IS_MENU_ITEM(scale)); + + GtkWidget * menu = gtk_menu_new(); + gtk_widget_show(menu); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), scale); + + gtk_widget_show(scale); + gtk_widget_realize(scale); + + EXPECT_TRUE(gtk_widget_get_realized(scale)); + + g_object_ref_sink(menu); + g_object_unref(menu); + return; +} -- cgit v1.2.3 From 4636768621434e40918be355637ab6e1920ef2ba Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 25 Apr 2012 15:24:26 -0500 Subject: Bring in xorg-gtest to get an X11 wrapper --- configure.ac | 1 + tests/Makefile.am | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/configure.ac b/configure.ac index 648c056..6e350b9 100644 --- a/configure.ac +++ b/configure.ac @@ -133,6 +133,7 @@ dnl = Google Test Framework =================================================== m4_include([m4/gtest.m4]) CHECK_GTEST +CHECK_XORG_GTEST dnl = GTK Doc Check =========================================================== diff --git a/tests/Makefile.am b/tests/Makefile.am index 03429c7..04e6cde 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -19,14 +19,15 @@ AM_CPPFLAGS = \ ############################# nodist_libgtest_a_SOURCES = \ + $(XORG_GTEST_SOURCE)/src/xorg-gtest-all.cpp \ $(GTEST_SOURCE)/src/gtest-all.cc \ - $(GTEST_SOURCE)/src/gtest_main.cc + $(XORG_GTEST_SOURCE)/src/xorg-gtest_main.cpp libgtest_a_CPPFLAGS = \ + $(XORG_GTEST_CPPFLAGS) \ + $(AM_CPPFLAGS) \ $(GTEST_CPPFLAGS) -w libgtest_a_CXXFLAGS = \ $(AM_CXXFLAGS) -libgtest_a_CPPFLAGS = \ - $(AM_CPPFLAGS) ############################# # Menuitem tests -- cgit v1.2.3