From 4e9c5e0a0002e40d89ba0ec6e770171ca75b5441 Mon Sep 17 00:00:00 2001 From: Anna Schumaker Date: Thu, 24 Mar 2016 08:29:56 -0400 Subject: [PATCH] tests: Build window test with ctest Signed-off-by: Anna Schumaker --- tests/gui/CMakeLists.txt | 1 + tests/gui/Sconscript | 2 +- tests/gui/window.c | 60 +++++++++++++++++++++------------------- 3 files changed, 33 insertions(+), 30 deletions(-) diff --git a/tests/gui/CMakeLists.txt b/tests/gui/CMakeLists.txt index 8e8da612..fa1726b6 100644 --- a/tests/gui/CMakeLists.txt +++ b/tests/gui/CMakeLists.txt @@ -9,3 +9,4 @@ gui_unit_test(Settings) gui_unit_test(Model) gui_unit_test(View) gui_unit_test(Queue) +gui_unit_test(Window) diff --git a/tests/gui/Sconscript b/tests/gui/Sconscript index 13489043..d72af60a 100644 --- a/tests/gui/Sconscript +++ b/tests/gui/Sconscript @@ -29,7 +29,7 @@ gui_objs += [ env.Object("../../gui/settings.c") ] gui_objs += [ env.Object("../../gui/model.c") ] gui_objs += [ env.Object("../../gui/view.c") ] gui_objs += [ env.Object("../../gui/queue.c") ] -res += [ GuiTest("window") ] +gui_objs += [ env.Object("../../gui/window.c") ] res += [ GuiTest("idle") ] res += [ GuiTest("sidebar") ] res += [ GuiTest("playlist") ] diff --git a/tests/gui/window.c b/tests/gui/window.c index 6394cfde..d6f6e748 100644 --- a/tests/gui/window.c +++ b/tests/gui/window.c @@ -1,10 +1,6 @@ /* * Copyright 2015 (c) Anna Schumaker. */ -#define TEST_NEED_AUDIO -#define TEST_NEED_SIDEBAR -#define TEST_NEED_COLLECTION -#define TEST_NEED_PLAYLIST #include #include #include @@ -23,7 +19,33 @@ static int test_on_idle(gpointer data) static void test_window() { GtkWindow *window; - int argc = 0; + + main_loop = g_main_loop_new(NULL, FALSE); + window = GTK_WINDOW(gui_builder_widget("o_window")); + g_idle_add(test_on_idle, window); + + g_assert_false(gui_settings_has("gui.window.width")); + g_assert_false(gui_settings_has("gui.window.height")); + g_assert_cmpstr(gtk_window_get_title(window), ==, "Ocarina " CONFIG_VERSION); + + g_main_loop_run(main_loop); + g_assert_true(gui_settings_has("gui.window.width")); + g_assert_true(gui_settings_has("gui.window.height")); + + gui_settings_set("gui.window.width", 800); + gui_settings_set("gui.window.height", 600); + gui_window_init("share/ocarina/ocarina.png"); + + g_main_loop_run(main_loop); + g_assert_cmpuint(gui_settings_get("gui.window.width"), ==, 800); + g_assert_cmpuint(gui_settings_get("gui.window.height"), ==, 600); + + g_main_loop_unref(main_loop); +} + +int main(int argc, char **argv) +{ + int ret; gtk_init(&argc, NULL); gui_builder_init("share/ocarina/ocarina6.glade"); @@ -31,32 +53,12 @@ static void test_window() gui_view_init(); gui_window_init("share/ocarina/ocarina.png"); - main_loop = g_main_loop_new(NULL, FALSE); - window = GTK_WINDOW(gui_builder_widget("o_window")); - g_idle_add(test_on_idle, window); + g_test_init(&argc, &argv, NULL); + g_test_add_func("/Gui/Window", test_window); + ret = g_test_run(); - test_equal(gui_settings_has("gui.window.width"), (bool)false); - test_equal(gui_settings_has("gui.window.height"), (bool)false); - test_equal(gtk_window_get_title(window), "Ocarina " CONFIG_VERSION); - - g_main_loop_run(main_loop); - test_equal(gui_settings_has("gui.window.width"), (bool)true); - test_equal(gui_settings_has("gui.window.height"), (bool)true); - - gui_settings_set("gui.window.width", 800); - gui_settings_set("gui.window.height", 600); - gui_window_init("share/ocarina/ocarina.png"); - - g_main_loop_run(main_loop); - test_equal(gui_settings_get("gui.window.width"), 800); - test_equal(gui_settings_get("gui.window.height"), 600); - - g_main_loop_unref(main_loop); gui_window_deinit(); gui_settings_deinit(); gui_builder_deinit(); + return ret; } - -DECLARE_UNIT_TESTS( - UNIT_TEST("GUI Window", test_window), -);