From e4176d2c706735498ff2d408b1d9e58a9cbac542 Mon Sep 17 00:00:00 2001 From: Joe Konno Date: Mon, 11 Jun 2012 12:42:47 -0700 Subject: [PATCH] test_window: add iconify, maximize tests Added simple test stubs for iconify and un-iconify. Also known as minimize and un-minimize. In addition, simple tests for maxmize. Signed-off-by: Joe Konno --- src/efl/test_window.cpp | 79 +++++++++++++++++++++++++++++++++++++++++++++++++ src/efl/window.cpp | 20 +++++++++++++ src/efl/window.h | 6 ++++ 3 files changed, 105 insertions(+) diff --git a/src/efl/test_window.cpp b/src/efl/test_window.cpp index 427fdaf..74e9f70 100644 --- a/src/efl/test_window.cpp +++ b/src/efl/test_window.cpp @@ -83,9 +83,88 @@ private: Window window_; }; +class WindowIconifyTest : public ElmTestHarness +{ +public: + WindowIconifyTest() + : ElmTestHarness::ElmTestHarness() + , window_("WindowIconifyTest", "Window Iconify/Minimize Test") + { + return; + } + + void setup() + { + window_.show(); + + queueCallback( + ModifyCheckCallback( + boost::bind(&Window::iconify, boost::ref(window_), EINA_TRUE), + boost::bind(&WindowIconifyTest::checkIconified, boost::ref(*this), EINA_TRUE) + ) + ); + + queueCallback( + ModifyCheckCallback( + boost::bind(&Window::iconify, boost::ref(window_), EINA_FALSE), + boost::bind(&WindowIconifyTest::checkIconified, boost::ref(*this), EINA_FALSE) + ) + ); + } + + void checkIconified(Eina_Bool isIconified) + { + BOOST_CHECK_EQUAL(window_.isIconified(), isIconified); + } + +private: + Window window_; +}; + +class WindowMaximizeTest : public ElmTestHarness +{ +public: + WindowMaximizeTest() + : ElmTestHarness::ElmTestHarness() + , window_("WindowMaximizeTest", "Window Maximize Test") + { + return; + } + + void setup() + { + window_.show(); + + queueCallback( + ModifyCheckCallback( + boost::bind(&Window::maximize, boost::ref(window_), EINA_TRUE), + boost::bind(&WindowMaximizeTest::checkMaximized, boost::ref(*this), EINA_TRUE) + ) + ); + + queueCallback( + ModifyCheckCallback( + boost::bind(&Window::maximize, boost::ref(window_), EINA_FALSE), + boost::bind(&WindowMaximizeTest::checkMaximized, boost::ref(*this), EINA_FALSE) + ) + ); + } + + void checkMaximized(Eina_Bool isMaximized) + { + BOOST_CHECK_EQUAL(window_.isMaximized(), isMaximized); + } + +private: + Window window_; +}; + + BOOST_AUTO_TEST_SUITE(Wayland_EFL_Window_Suite) WAYLAND_ELM_HARNESS_TEST_CASE(WindowResizeTest) WAYLAND_ELM_HARNESS_TEST_CASE(WindowMoveTest) + WAYLAND_ELM_HARNESS_TEST_CASE(WindowIconifyTest) + WAYLAND_ELM_HARNESS_TEST_CASE(WindowMaximizeTest) BOOST_AUTO_TEST_SUITE_END() diff --git a/src/efl/window.cpp b/src/efl/window.cpp index 374426a..a6c4651 100644 --- a/src/efl/window.cpp +++ b/src/efl/window.cpp @@ -10,3 +10,23 @@ Window::Window(const std::string& name, const std::string& title, const unsigned setSize(width, height); } + +void Window::iconify(Eina_Bool iconify) +{ + elm_win_iconified_set(*this, iconify); +} + +Eina_Bool Window::isIconified() +{ + return elm_win_iconified_get(*this); +} + +void Window::maximize(Eina_Bool maximize) +{ + elm_win_maximized_set(*this, maximize); +} + +Eina_Bool Window::isMaximized() +{ + return elm_win_maximized_get(*this); +} \ No newline at end of file diff --git a/src/efl/window.h b/src/efl/window.h index 17c73c0..c6c7077 100644 --- a/src/efl/window.h +++ b/src/efl/window.h @@ -9,6 +9,12 @@ class Window : public EvasObject { public: Window(const std::string& = "name", const std::string& = "title", const unsigned = 50, const unsigned = 50); + + void iconify(Eina_Bool iconify); + void maximize(Eina_Bool maximize); + + Eina_Bool isIconified(); + Eina_Bool isMaximized(); }; #endif -- 2.7.4