aboutsummaryrefslogtreecommitdiff
path: root/tests/gtest-menuitems.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/gtest-menuitems.cpp')
-rw-r--r--tests/gtest-menuitems.cpp147
1 files changed, 45 insertions, 102 deletions
diff --git a/tests/gtest-menuitems.cpp b/tests/gtest-menuitems.cpp
index 3942bfc..269d360 100644
--- a/tests/gtest-menuitems.cpp
+++ b/tests/gtest-menuitems.cpp
@@ -4,7 +4,6 @@
#include "idocalendarmenuitem.h"
#include "idoentrymenuitem.h"
#include "idoscalemenuitem.h"
-#include "idoswitchmenuitem.h"
class TestMenuitems : public ::testing::Test
{
@@ -16,90 +15,48 @@ public:
gtk_init(&argc, (gchar ***)&argv);
return;
}
-
-protected:
- void PutInMenu (GtkWidget * item)
- {
- GtkWidget * menu = gtk_menu_new();
- gtk_widget_show(menu);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu), item);
-
- gtk_widget_show(item);
- gtk_widget_realize(item);
-
- EXPECT_TRUE(gtk_widget_get_realized(item));
-
- g_object_ref_sink(menu);
- g_object_unref(menu);
- }
};
TEST_F(TestMenuitems, BuildCalendar) {
GtkWidget * cal = ido_calendar_menu_item_new();
- IdoCalendarMenuItem * c = IDO_CALENDAR_MENU_ITEM (cal);
EXPECT_TRUE(cal != NULL);
EXPECT_TRUE(IDO_IS_CALENDAR_MENU_ITEM(cal));
EXPECT_TRUE(GTK_IS_MENU_ITEM(cal));
- const guint year_in = 1963;
- const guint month_in = 10;
- const guint day_in = 23;
- ido_calendar_menu_item_set_date (c, year_in, month_in, day_in);
- guint year_out = 0;
- guint month_out = 0;
- guint day_out = 0;
- ido_calendar_menu_item_get_date (c, &year_out, &month_out, &day_out);
- ASSERT_EQ (year_in, year_out);
- ASSERT_EQ (month_in, month_out);
- ASSERT_EQ (day_in, day_out);
-
- const GtkCalendarDisplayOptions options_in = GTK_CALENDAR_SHOW_DAY_NAMES;
- ido_calendar_menu_item_set_display_options (c, options_in);
- const GtkCalendarDisplayOptions options_out = ido_calendar_menu_item_get_display_options (c);
- ASSERT_EQ (options_in, options_out);
-
- GtkWidget * w;
- w = ido_calendar_menu_item_get_calendar (c);
- ASSERT_TRUE (w != NULL);
- ASSERT_TRUE (GTK_IS_CALENDAR (w));
-
- // test clear/mark/unmark days
- ido_calendar_menu_item_clear_marks (c);
- ido_calendar_menu_item_mark_day (c, 0);
- ido_calendar_menu_item_mark_day (c, 1);
- ido_calendar_menu_item_mark_day (c, 2);
- ido_calendar_menu_item_unmark_day (c, 0);
- ido_calendar_menu_item_unmark_day (c, 2);
- for (int i=0; i<28; i++)
- ASSERT_EQ (gtk_calendar_get_day_is_marked(GTK_CALENDAR(w), i), i==1);
-
- PutInMenu (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(menu);
+ g_object_unref(menu);
return;
}
-TEST_F(TestMenuitems, BuildEntry)
-{
+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 * w = ido_entry_menu_item_get_entry (IDO_ENTRY_MENU_ITEM(entry));
- ASSERT_TRUE (w != NULL);
- ASSERT_TRUE (GTK_IS_ENTRY (w));
+ EXPECT_TRUE(entry != NULL);
+ EXPECT_TRUE(IDO_IS_ENTRY_MENU_ITEM(entry));
+ EXPECT_TRUE(GTK_IS_MENU_ITEM(entry));
- PutInMenu (entry);
- return;
-}
+ GtkWidget * menu = gtk_menu_new();
+ gtk_widget_show(menu);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), entry);
-namespace
-{
- void increment_the_userdata (GObject * scale, gpointer userdata)
- {
- ++*static_cast<int*>(userdata);
- }
+ 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;
}
TEST_F(TestMenuitems, BuildScaleDefault) {
@@ -109,27 +66,17 @@ TEST_F(TestMenuitems, BuildScaleDefault) {
EXPECT_TRUE(IDO_IS_SCALE_MENU_ITEM(scale));
EXPECT_TRUE(GTK_IS_MENU_ITEM(scale));
- const gchar * str_in = "Primary Text";
- ido_scale_menu_item_set_primary_label (IDO_SCALE_MENU_ITEM(scale), str_in);
- const gchar * str_out = ido_scale_menu_item_get_primary_label (IDO_SCALE_MENU_ITEM(scale));
- ASSERT_TRUE (str_in != str_out);
- ASSERT_STREQ (str_in, str_out);
-
- str_in = "Secondary Text";
- ido_scale_menu_item_set_secondary_label (IDO_SCALE_MENU_ITEM(scale), str_in);
- str_out = ido_scale_menu_item_get_secondary_label (IDO_SCALE_MENU_ITEM(scale));
- ASSERT_TRUE (str_in != str_out);
- ASSERT_STREQ (str_in, str_out);
-
- int i = 0;
- g_signal_connect (scale, "primary-clicked", G_CALLBACK(increment_the_userdata), &i);
- g_signal_connect (scale, "secondary-clicked", G_CALLBACK(increment_the_userdata), &i);
- ido_scale_menu_item_primary_clicked (IDO_SCALE_MENU_ITEM (scale));
- ASSERT_EQ (1, i);
- ido_scale_menu_item_secondary_clicked (IDO_SCALE_MENU_ITEM (scale));
- ASSERT_EQ (2, i);
-
- PutInMenu (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;
}
@@ -140,20 +87,16 @@ TEST_F(TestMenuitems, BuildScaleSmall) {
EXPECT_TRUE(IDO_IS_SCALE_MENU_ITEM(scale));
EXPECT_TRUE(GTK_IS_MENU_ITEM(scale));
- PutInMenu (scale);
- return;
-}
+ 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);
-TEST_F(TestMenuitems, BuildSwitch) {
- GtkWidget * item = ido_switch_menu_item_new ();
- EXPECT_TRUE (item != NULL);
- EXPECT_TRUE (IDO_IS_SWITCH_MENU_ITEM(item));
- EXPECT_TRUE (GTK_IS_MENU_ITEM(item));
+ EXPECT_TRUE(gtk_widget_get_realized(scale));
- GtkContainer * content_area = ido_switch_menu_item_get_content_area (IDO_SWITCH_MENU_ITEM(item));
- EXPECT_TRUE (content_area != NULL);
- EXPECT_TRUE (GTK_IS_CONTAINER (content_area));
-
- PutInMenu (item);
+ g_object_ref_sink(menu);
+ g_object_unref(menu);
+ return;
}