--- /dev/null
+#include <check.h>\r
+#include <Elementary.h>\r
+#include "../utc_elm_common.h"\r
+#include "../../utc_negative_unitest.h"\r
+#include <string.h>\r
+#include <math.h>\r
+\r
+static int g_elm_argc = 1;\r
+static char *g_elm_argv[] = {"ls", NULL};\r
+\r
+/**\r
+ * @addtogroup elm_general\r
+ * @{\r
+ * @defgroup elm_quicklaunch\r
+ *\r
+ * @precondition\r
+ * @step 1 Initialize quicklaunch\r
+ */\r
+\r
+static void\r
+setup(void)\r
+{\r
+ printf(" ============ Startup ============ \n");\r
+ if (inited)\r
+ {\r
+ ecore_fork_reset(); \r
+ elm_shutdown();\r
+ }\r
+\r
+ elm_quicklaunch_mode_set(EINA_TRUE);\r
+ elm_quicklaunch_init(g_elm_argc, g_elm_argv);\r
+}\r
+\r
+static void\r
+teardown(void)\r
+{\r
+ elm_quicklaunch_shutdown();\r
+ printf(" ============ Cleanup ============ \n");\r
+}\r
+\r
+/**\r
+ * @addtogroup elm_quicklaunch\r
+ * @{\r
+ * @objective use elm_quicklaunch APIs to start an application with one loop cycle.\r
+ * @n Input data:\r
+ * @li no input parameters\r
+ *\r
+ * @procedure\r
+ * @step 1 execute single loop cycle to cover elm_quicklaunch APIs\r
+ *\r
+ * @passcondition Test passes if there is no segmentation fault.\r
+ * @}\r
+ */\r
+START_TEST(utc_elm_quicklaunch)\r
+{\r
+ if (elm_quicklaunch_mode_get() == EINA_FALSE)\r
+ {\r
+ ck_abort_msg("[TEST_FAIL]:: %s[%d] : Test has failed..", __FILE__, __LINE__);\r
+ return;\r
+ }\r
+\r
+ //one loop cycle only.\r
+ elm_quicklaunch_sub_init(g_elm_argc, g_elm_argv);\r
+ //execute /usr/bin/ls\r
+ elm_quicklaunch_fork(g_elm_argc, g_elm_argv, "/usr/bin/", NULL, NULL);\r
+ elm_quicklaunch_cleanup();\r
+\r
+ elm_quicklaunch_sub_shutdown();\r
+\r
+ printf("[TEST_PASS]:: %s[%d] : Test has passed..\n", __FILE__, __LINE__);\r
+}\r
+END_TEST\r
+\r
+/**\r
+ *@}\r
+ */\r
+\r
+TCase * _utc_elm_quicklaunch()\r
+{\r
+ TCase *tcase = tcase_create("utc_elm_quicklaunch");\r
+ tcase_set_timeout(tcase, 30);\r
+ tcase_add_checked_fixture(tcase, setup, teardown);\r
+ tcase_add_test(tcase, utc_elm_quicklaunch);\r
+ return tcase;\r
+}\r