Add group_feature_moments_center_layout_show 53/135353/2
authorjin0.kim <jin0.kim@samsung.com>
Thu, 22 Jun 2017 04:34:38 +0000 (13:04 +0830)
committerjin0.kim <jin0.kim@samsung.com>
Thu, 22 Jun 2017 04:37:29 +0000 (13:07 +0830)
Change-Id: Ifca7887aa0d3cec6349e28d04a688ae73d5137e3

CMakeLists.txt
test/feature_test/feature_test.c
test/feature_test/feature_test.h
test/feature_test/group_feature_moments_center_layout_show.c [new file with mode: 0755]

index 85f9c6cd9f3c36cf62bec6723a20f5e0a19cdcc0..73a2d78b5c863d72bc2c7e707fa0f54d6c019b26 100755 (executable)
@@ -235,6 +235,7 @@ ADD_EXECUTABLE(${PROJECT_NAME}
        test/feature_test/group_feature_moments_controls_show.c
        test/feature_test/group_feature_moments_controls_state.c
        test/feature_test/group_feature_moments_control_button_status_behavior.c
+       test/feature_test/group_feature_moments_center_layout_show.c
 
        test/unit/unit_assert.c
        test/unit/unit.c
index 783415a7ef2613824a1d4415926f36f295cbe5f9..07caaaf71e75c43624fc5106c1c722edc684c574 100755 (executable)
@@ -38,6 +38,7 @@ void feature_test(void)
        TEST_GROUP_ADD("group_feature_moments_controls_show", group_feature_moments_controls_show);
        TEST_GROUP_ADD("group_feature_moments_controls_state", group_feature_moments_controls_state);
        TEST_GROUP_ADD("group_feature_moments_control_button_status_behavior", group_feature_moments_control_button_status_behavior);
+       TEST_GROUP_ADD("group_feature_moments_center_layout_show", group_feature_moments_center_layout_show);
 
        TEST_RUN(__test_complete_cb);
 }
index 93a1c29ae98de6d74174acd417db21244ab883b0..97867e3ba99dcd9dd03844aa7ec42dd8b9827d0c 100755 (executable)
@@ -35,6 +35,7 @@ void group_feature_moments_status_behavior(unit_group_t * group);
 void group_feature_moments_controls_show(unit_group_t * group);
 void group_feature_moments_controls_state(unit_group_t * group);
 void group_feature_moments_control_button_status_behavior(unit_group_t * group);
+void group_feature_moments_center_layout_show(unit_group_t * group);
 
 #endif
 
diff --git a/test/feature_test/group_feature_moments_center_layout_show.c b/test/feature_test/group_feature_moments_center_layout_show.c
new file mode 100755 (executable)
index 0000000..3366a12
--- /dev/null
@@ -0,0 +1,176 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "test.h"
+#if TEST_MODE
+
+#include "feature_test.h"
+#include "moments/moments.h"
+#include "moments/moments_view.h"
+#include "common_conf.h"
+#include "moments/moments_view_conf.h"
+#include "moments/moments_view_edje_conf.h"
+#include "home_app_manager.h"
+#include "../test_function.h"
+
+static struct {
+       unit_group_t * group;
+} s_info = {
+       .group = NULL,
+};
+
+extern const char *center_layout_group_name[MOMENTS_CONNECTION_STATUS_MAX];
+
+static void __group_set_up(void)
+{
+       if (moments_get_visible() == false) {
+               main_s * info = main_get_info();
+
+               __t__layout_mouse_down(info->layout, 180, 50);
+               __t__layout_mouse_move(info->layout, 180, 300);
+               __t__layout_mouse_up(info->layout, 180, 300);
+
+               TEST_GROUP_SET_UP_DONE(0.6, s_info.group);
+       }
+
+       __t__pull_down_complete_cb();
+       TEST_GROUP_SET_UP_DONE(0.05, s_info.group);
+}
+
+static void __group_tear_down(void)
+{
+       __t__set_connection_status(MOMENTS_CONNECTION_STATUS_STANDALONE);
+
+       moments_view_update();
+
+       if (moments_get_visible()) {
+               moments_hide();
+
+               TEST_GROUP_TEAR_DOWN_DONE(0.6, s_info.group);
+       }
+
+       TEST_GROUP_TEAR_DOWN_DONE(0.0, s_info.group);
+}
+
+static void __set_up(void)
+{
+       s_info.group->set_up_complete(s_info.group);
+}
+
+static void __tear_down(void)
+{
+       s_info.group->tear_down_complete(s_info.group);
+}
+
+static unit_case_func_t __continue_check_center_layout(void * data);
+static unit_case_func_t __case_check_center_layout(void *data)
+{
+       int connection_status = (int)data;
+       __t__set_connection_status((int)connection_status);
+
+       moments_view_update();
+
+       TEST_CASE_CONTINUE(0.6, __continue_check_center_layout, data);
+}
+
+static unit_case_func_t __continue_check_center_layout(void * data)
+{
+       Evas_Object * center_layout = __t__get_moments_center_layout();
+       TEST_ASSERT_TRUE(center_layout != NULL);
+       TEST_ASSERT_TRUE(evas_object_visible_get(center_layout));
+
+       const char *group = NULL;
+       elm_layout_file_get(center_layout, NULL, &group);
+
+       int connection_status = (int)data;
+       TEST_ASSERT_EQUAL_STRING(center_layout_group_name[connection_status], group);
+
+       Evas_Object * size_setter = __t__get_moments_size_setter();
+       TEST_ASSERT_TRUE(size_setter != NULL);
+       TEST_ASSERT_TRUE(evas_object_visible_get(size_setter));
+
+       int x = 0, y = 0, w = 0, h = 0;
+       evas_object_geometry_get(size_setter, &x, &y, &w, &h);
+
+       TEST_ASSERT_EQUAL_INT(0, x);
+       TEST_ASSERT_EQUAL_INT(0, y);
+       TEST_ASSERT_EQUAL_INT(WINDOW_W, w);
+       TEST_ASSERT_EQUAL_INT(WINDOW_W, h);
+
+       evas_object_geometry_get(center_layout, &x, &y, &w, &h);
+
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_W, w);;
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_H, h);
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_X, x);
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_Y, y);
+
+       Evas_Object * eo = elm_layout_edje_get(center_layout);
+
+       Evas_Object * icon = (Evas_Object *)edje_object_part_object_get(eo, CENTER_STATUS_ICON);
+       TEST_ASSERT_TRUE(icon != NULL);
+       TEST_ASSERT_TRUE(evas_object_visible_get(icon));
+
+       evas_object_geometry_get(icon, &x, &y, &w, &h);
+
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_STATUS_ICON_W, w);
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_STATUS_ICON_H, h);
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_STATUS_ICON_X, x);
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_STATUS_ICON_Y, y);
+
+       Evas_Object * status_text = (Evas_Object *)edje_object_part_object_get(eo, CENTER_STATUS_TEXT);
+       TEST_ASSERT_TRUE(status_text != NULL);
+       TEST_ASSERT_TRUE(evas_object_visible_get(status_text));
+
+       evas_object_geometry_get(status_text, &x, &y, &w, &h);
+
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_STATUS_TEXT_W, w);
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_STATUS_TEXT_H, h);
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_STATUS_TEXT_X, x);
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_STATUS_TEXT_Y, y);
+
+       Evas_Object * plmn_text = (Evas_Object *)edje_object_part_object_get(eo, CENTER_PLMN_TEXT);
+       TEST_ASSERT_TRUE(plmn_text != NULL);
+       TEST_ASSERT_TRUE(evas_object_visible_get(plmn_text));
+
+       evas_object_geometry_get(plmn_text, &x, &y, &w, &h);
+
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_PLMN_TEXT_W, w);
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_PLMN_TEXT_H, h);
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_PLMN_TEXT_X, x);
+       TEST_ASSERT_EQUAL_INT(MOMENTS_CENTER_PLMN_TEXT_Y, y);
+
+       TEST_CASE_DONE(s_info.group);
+}
+
+void group_feature_moments_center_layout_show(unit_group_t * group)
+{
+       s_info.group = group;
+       s_info.group->set_up = __set_up;
+       s_info.group->tear_down = __tear_down;
+
+       TEST_GROUP_SET_UP(s_info.group, __group_set_up);
+       TEST_CASE_ADD(s_info.group, __case_check_center_layout, (void*)MOMENTS_CONNECTION_STATUS_STANDALONE);
+       TEST_CASE_ADD(s_info.group, __case_check_center_layout, (void*)MOMENTS_CONNECTION_STATUS_CONNECTED_BLUETOOTH);
+       TEST_CASE_ADD(s_info.group, __case_check_center_layout, (void*)MOMENTS_CONNECTION_STATUS_CONNECTED_REMOTELY);
+
+       TEST_GROUP_TEAR_DOWN(s_info.group, __group_tear_down);
+
+       TEST_GROUP_RUN(s_info.group);
+}
+
+
+#endif
+