--- /dev/null
+#include <check.h>\r
+\r
+#define WIDTH 800\r
+#define HEIGHT 600\r
+\r
+#include <Evas.h>\r
+#include <Ecore.h>\r
+#include <Ecore_Evas.h>\r
+#include <Eina.h>\r
+\r
+#include <math.h>\r
+#include <float.h>\r
+\r
+static Ecore_Evas *ee = NULL;\r
+\r
+/**\r
+ * @addtogroup evas_vg\r
+ * @{\r
+ * @defgroup evas_vg_gradient\r
+ *\r
+ *\r
+ * @precondition\r
+ * @step 1 Initialize ecore-evas with ecore_evas_init()\r
+ * @step 2 Create a new Ecore_Evas and show\r
+ */\r
+static void\r
+setup(void)\r
+{\r
+ printf(" ============ Startup ============ \n");\r
+ ecore_evas_init();\r
+ ee = ecore_evas_new(NULL, 0, 0, WIDTH, HEIGHT, NULL);\r
+ if (!ee)\r
+ {\r
+ ck_abort_msg("[TEST_FAIL]:: %s[%d] : Test has failed", __FILE__, __LINE__);\r
+ return;\r
+ }\r
+ ecore_evas_show(ee);\r
+}\r
+\r
+static void\r
+teardown(void)\r
+{\r
+ printf(" ============ Cleanup ============ \n");\r
+ if (ee)\r
+ {\r
+ ecore_evas_free(ee);\r
+ }\r
+ ecore_evas_shutdown();\r
+}\r
+\r
+/**\r
+ * @addtogroup evas_vg_gradient\r
+ * @{\r
+ * @defgroup evas_vg_gradient_radial\r
+ * @{\r
+ * @objective Positive test case checks if functions sets/gets the center of radial gradient, gets/sets the center radius of radial gradient,\r
+ * gets/sets the focal point of radial gradient and without segmentation fault.\r
+ * @passcondition Function should get/set expected the center of radial gradient, set/get expected the center radius of radial gradient,\r
+ * set/get expected the focal point of radial gradient and without segmentation fault.\r
+ * @}\r
+ * @}\r
+ */\r
+\r
+START_TEST(utc_evas_vg_gradient_radial_focal_get_set_p)\r
+{\r
+ double shape_epsilon = 0.000001;\r
+ Efl_VG *root, *rgradient;\r
+\r
+ Evas_Object *vg = evas_object_vg_add(ecore_evas_get(ee));\r
+ if (!vg)\r
+ {\r
+ ck_abort_msg("[TEST_FAIL]:: %s[%d] : Test has failed", __FILE__, __LINE__);\r
+ return;\r
+ }\r
+ evas_object_resize(vg, WIDTH, HEIGHT);\r
+ evas_object_show(vg);\r
+ evas_object_vg_root_node_set(vg, evas_vg_container_add(vg));\r
+ root = evas_object_vg_root_node_get(vg);\r
+ if (!root)\r
+ {\r
+ ck_abort_msg("[TEST_FAIL]:: %s[%d] : Test has failed", __FILE__, __LINE__);\r
+ return;\r
+ }\r
+\r
+ double x,focal_x;\r
+ double y,focal_y;\r
+ focal_x=30;\r
+ focal_y=30;\r
+ rgradient = evas_vg_gradient_radial_add(root);\r
+\r
+ evas_vg_gradient_radial_focal_set(rgradient, focal_x, focal_y);\r
+ evas_vg_gradient_radial_focal_get(rgradient, &x, &y);\r
+ if (fabs(x - focal_x) > shape_epsilon || fabs(y - focal_y) > shape_epsilon)\r
+ {\r
+ ck_abort_msg("[TEST_FAIL]:: %s[%d] : Test has failed ", __FILE__, __LINE__);\r
+ return;\r
+ }\r
+\r
+ printf("[TEST_PASS]:: %s[%d] : Test has passed..\n", __FILE__, __LINE__);\r
+}\r
+END_TEST\r
+\r
+START_TEST(utc_evas_vg_gradient_radial_focal_get_set_n)\r
+{\r
+ evas_vg_gradient_radial_focal_set(NULL, 30, 30);\r
+ evas_vg_gradient_radial_focal_get(NULL, NULL, NULL);\r
+\r
+ printf("[TEST_PASS]:: %s[%d] : Test has passed..\n", __FILE__, __LINE__);\r
+}\r
+END_TEST\r
+\r
+TCase * _utc_evas_vg_gradient_radial_focal_get_set()\r
+{\r
+ TCase *tcase = tcase_create("utc_evas_vg_gradient_radial_focal_get_set");\r
+ tcase_set_timeout(tcase, 30);\r
+ tcase_add_checked_fixture(tcase, setup, teardown);\r
+ tcase_add_test(tcase, utc_evas_vg_gradient_radial_focal_get_set_p);\r
+ tcase_add_test(tcase, utc_evas_vg_gradient_radial_focal_get_set_n);\r
+ return tcase;\r
+}\r