* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
#include "libmm_evas_renderer_unittest.h"
+#include <media_packet.h>
+#include <dlog.h>
+#include <Elementary.h>
+
+enum {
+ DISP_GEO_METHOD_LETTER_BOX = 0,
+ DISP_GEO_METHOD_ORIGIN_SIZE,
+ DISP_GEO_METHOD_FULL_SCREEN,
+ DISP_GEO_METHOD_CROPPED_FULL_SCREEN,
+ DISP_GEO_METHOD_ORIGIN_SIZE_OR_LETTER_BOX,
+ DISP_GEO_METHOD_CUSTOM_ROI,
+ DISP_GEO_METHOD_NUM,
+};
+
+enum {
+ DEGREE_0 = 0,
+ DEGREE_90,
+ DEGREE_180,
+ DEGREE_270,
+ DEGREE_NUM,
+};
+
+enum {
+ FLIP_NONE = 0,
+ FLIP_HORIZONTAL,
+ FLIP_VERTICAL,
+ FLIP_BOTH,
+ FLIP_NUM,
+};
using ::testing::InitGoogleTest;
using ::testing::Test;
using ::testing::TestCase;
+using namespace std;
+
+static Evas_Object *win;
+static Evas_Object *image;
+
class libmm_evas_renderer_Test : public ::testing::Test {
protected:
+ void *evas_handle = NULL;
+
void SetUp() {
- std::cout << "SetUp()" << std::endl;
+ if (mm_evas_renderer_create(&evas_handle, image) != MM_ERROR_NONE)
+ cout << "[ERROR] mm_evas_renderer_create() failed" << endl;
}
void TearDown() {
- std::cout << "TearDown()" << std::endl;
+ if (evas_handle) {
+ if (mm_evas_renderer_destroy(&evas_handle) != MM_ERROR_NONE)
+ cout << "[ERROR] mm_evas_renderer_destroy() failed" << endl;
+ }
}
};
-TEST_F(libmm_evas_renderer_Test, mm_evas_renderer_create_p)
+static void create_win()
+{
+ Evas *e = NULL;
+ cout << "Create winow" << endl;
+ elm_init(1, NULL);
+ win = elm_win_add(NULL, "unit_test", ELM_WIN_BASIC);
+ if (!win)
+ return;
+ e = evas_object_evas_get(win);
+ if (!e)
+ return;
+ cout << "Create image" << endl;
+ image = evas_object_image_add(e);
+}
+
+static void destroy_win()
+{
+ if (image) {
+ evas_object_del(image);
+ image = NULL;
+ }
+
+ if (win) {
+ evas_object_del(win);
+ win = NULL;
+ }
+}
+
+TEST_F(libmm_evas_renderer_Test, set_visible_p)
+{
+ int ret = mm_evas_renderer_set_visible(evas_handle, TRUE);
+ EXPECT_EQ(ret, MM_ERROR_NONE);
+}
+
+TEST_F(libmm_evas_renderer_Test, set_visible_n)
+{
+ int ret = mm_evas_renderer_set_visible(NULL, TRUE);
+ EXPECT_EQ(ret, MM_ERROR_EVASRENDER_NOT_INITIALIZED);
+}
+
+TEST_F(libmm_evas_renderer_Test, get_visible_p)
+{
+ bool visible = FALSE;
+
+ int ret = mm_evas_renderer_set_visible(evas_handle, TRUE);
+ ASSERT_EQ(ret, MM_ERROR_NONE);
+
+ ret = mm_evas_renderer_get_visible(evas_handle, &visible);
+ ASSERT_EQ(ret, MM_ERROR_NONE);
+ EXPECT_EQ(visible, TRUE);
+}
+
+TEST_F(libmm_evas_renderer_Test, get_visible_n)
+{
+ bool visible = FALSE;
+
+ int ret = mm_evas_renderer_get_visible(NULL, &visible);
+ EXPECT_EQ(ret, MM_ERROR_EVASRENDER_NOT_INITIALIZED);
+}
+
+TEST_F(libmm_evas_renderer_Test, set_rotation_p)
+{
+ int ret = mm_evas_renderer_set_rotation(evas_handle, DEGREE_90);
+ EXPECT_EQ(ret, MM_ERROR_NONE);
+}
+
+TEST_F(libmm_evas_renderer_Test, set_rotation_n)
+{
+ int ret = mm_evas_renderer_set_rotation(NULL, DEGREE_90);
+ EXPECT_EQ(ret, MM_ERROR_EVASRENDER_NOT_INITIALIZED);
+}
+
+TEST_F(libmm_evas_renderer_Test, get_rotation_p)
+{
+ int rotate = -1;
+
+ int ret = mm_evas_renderer_set_rotation(evas_handle, DEGREE_90);
+ ASSERT_EQ(ret, MM_ERROR_NONE);
+
+ ret = mm_evas_renderer_get_rotation(evas_handle, &rotate);
+ ASSERT_EQ(ret, MM_ERROR_NONE);
+ EXPECT_EQ(rotate, DEGREE_90);
+}
+
+TEST_F(libmm_evas_renderer_Test, get_rotation_n)
{
+ int rotate = -1;
+ int ret = mm_evas_renderer_get_rotation(NULL, &rotate);
+ EXPECT_EQ(ret, MM_ERROR_EVASRENDER_NOT_INITIALIZED);
}
-TEST_F(libmm_evas_renderer_Test, mm_evas_renderer_create_n)
+TEST_F(libmm_evas_renderer_Test, set_geometry_p)
{
+ int ret = mm_evas_renderer_set_geometry(evas_handle, DISP_GEO_METHOD_LETTER_BOX);
+ EXPECT_EQ(ret, MM_ERROR_NONE);
+}
+
+TEST_F(libmm_evas_renderer_Test, set_geometry_n)
+{
+ int ret = mm_evas_renderer_set_geometry(NULL, DISP_GEO_METHOD_LETTER_BOX);
+ EXPECT_EQ(ret, MM_ERROR_EVASRENDER_NOT_INITIALIZED);
+}
+
+TEST_F(libmm_evas_renderer_Test, get_geometry_p)
+{
+ int get_mode = -1;
+
+ int ret = mm_evas_renderer_set_geometry(evas_handle, DISP_GEO_METHOD_LETTER_BOX);
+ ASSERT_EQ(ret, MM_ERROR_NONE);
+
+ ret = mm_evas_renderer_get_geometry(evas_handle, &get_mode);
+ ASSERT_EQ(ret, MM_ERROR_NONE);
+ EXPECT_EQ(DISP_GEO_METHOD_LETTER_BOX, get_mode);
+}
+
+TEST_F(libmm_evas_renderer_Test, get_geometry_n)
+{
+ int mode = -1;
+
+ int ret = mm_evas_renderer_get_geometry(NULL, &mode);
+ EXPECT_EQ(ret, MM_ERROR_EVASRENDER_NOT_INITIALIZED);
+}
+
+TEST_F(libmm_evas_renderer_Test, set_roi_area_p)
+{
+ int ret = mm_evas_renderer_set_roi_area(evas_handle, 10, 10, 320, 240);
+ EXPECT_EQ(ret, MM_ERROR_NONE);
+}
+
+TEST_F(libmm_evas_renderer_Test, set_roi_area_n)
+{
+ int ret = mm_evas_renderer_set_roi_area(NULL, 10, 10, 320, 240);
+ EXPECT_EQ(ret, MM_ERROR_EVASRENDER_NOT_INITIALIZED);
+}
+
+TEST_F(libmm_evas_renderer_Test, get_roi_area_p)
+{
+ int get_x = 0, get_y = 0, get_w = 0, get_h = 0;
+
+ int ret = mm_evas_renderer_set_roi_area(evas_handle, 10, 10, 320, 240);
+ ASSERT_EQ(ret, MM_ERROR_NONE);
+ ret = mm_evas_renderer_get_roi_area(evas_handle, &get_x, &get_y, &get_w, &get_h);
+ ASSERT_EQ(ret, MM_ERROR_NONE);
+ EXPECT_EQ(10, get_x);
+ EXPECT_EQ(10, get_y);
+ EXPECT_EQ(320, get_w);
+ EXPECT_EQ(240, get_h);
+}
+
+TEST_F(libmm_evas_renderer_Test, get_roi_area_n)
+{
+
+ int get_x = 0, get_y = 0, get_w = 0, get_h = 0;
+
+ int ret = mm_evas_renderer_get_roi_area(NULL, &get_x, &get_y, &get_w, &get_h);
+ EXPECT_EQ(ret, MM_ERROR_EVASRENDER_NOT_INITIALIZED);
+}
+
+TEST_F(libmm_evas_renderer_Test, set_flip_p)
+{
+ int ret = mm_evas_renderer_set_flip(evas_handle, FLIP_NONE);
+ EXPECT_EQ(ret, MM_ERROR_NONE);
+}
+
+TEST_F(libmm_evas_renderer_Test, set_flip_n)
+{
+ int ret = mm_evas_renderer_set_flip(NULL, FLIP_NONE);
+ EXPECT_EQ(ret, MM_ERROR_EVASRENDER_NOT_INITIALIZED);
+}
+
+TEST_F(libmm_evas_renderer_Test, get_flip_p)
+{
+ int get_flip = FLIP_NONE;
+
+ int ret = mm_evas_renderer_set_flip(evas_handle, FLIP_HORIZONTAL);
+ ASSERT_EQ(ret, MM_ERROR_NONE);
+
+ ret = mm_evas_renderer_get_flip(evas_handle, &get_flip);
+ ASSERT_EQ(ret, MM_ERROR_NONE);
+ EXPECT_EQ(FLIP_HORIZONTAL, get_flip);
+}
+
+TEST_F(libmm_evas_renderer_Test, get_flip_n)
+{
+ int get_flip = FLIP_NONE;
+
+ int ret = mm_evas_renderer_get_flip(NULL, &get_flip);
+ EXPECT_EQ(ret, MM_ERROR_EVASRENDER_NOT_INITIALIZED);
}
gint main(gint argc, gchar **argv)
{
+ int ret;
+ create_win();
InitGoogleTest(&argc, argv);
+ ret = RUN_ALL_TESTS();
+ destroy_win();
- return RUN_ALL_TESTS();
-}
+ return ret;
+}
\ No newline at end of file