cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=70e5687f6c43ffd3a66de592e625ff59c15909b6

commit 70e5687f6c43ffd3a66de592e625ff59c15909b6
Author: Vivek Ellur <vivek.el...@samsung.com>
Date:   Thu Jun 25 15:35:33 2015 +0200

    eina: add test cases for eina matrix map and transform functions
    
    Summary:
    Added test cases for matrix map and transform functions
    
    Signed-off-by: Vivek Ellur <vivek.el...@samsung.com>
    
    Reviewers: stefan_schmidt, cedric
    
    Reviewed By: stefan_schmidt, cedric
    
    Subscribers: stefan_schmidt, cedric
    
    Differential Revision: https://phab.enlightenment.org/D2758
    
    Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/tests/eina/eina_test_matrix.c | 53 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)

diff --git a/src/tests/eina/eina_test_matrix.c 
b/src/tests/eina/eina_test_matrix.c
index ed7c7ef..af1e005 100644
--- a/src/tests/eina/eina_test_matrix.c
+++ b/src/tests/eina/eina_test_matrix.c
@@ -366,6 +366,58 @@ START_TEST(eina_matrix3_f16p16)
 }
 END_TEST
 
+START_TEST(eina_matrix3_map_transform)
+{
+   double x = 2, y = 3, x1, y1;
+   Eina_Matrix3 m;
+   Eina_Rectangle r;
+   Eina_Quad q;
+   Eina_Bool ret;
+
+   eina_init();
+
+   eina_matrix3_values_set(&m,
+                           0, 1, 0,
+                           1, 0, 0,
+                           0, 0, 1);
+
+   eina_matrix3_point_transform(&m,
+                                x, y,
+                                &x1, &y1);
+   fail_if(x1 != 3 || y1 != 2);
+
+   EINA_RECTANGLE_SET(&r, 0, 0, 3, 4);
+   eina_matrix3_rectangle_transform(&m, &r, &q);
+
+   fail_if(q.x0 != 0 || q.y0 != 0 ||
+           q.x1 != 0 || q.y1 != 3 ||
+           q.x2 != 4 || q.y2 != 3 ||
+           q.x3 != 4 || q.y3 != 0);
+
+   eina_quad_coords_set(&q,
+                        0.0, 0.0,
+                        3.0, 0.0,
+                        3.0, 3.0,
+                        0.0, 3.0);
+   ret = eina_matrix3_square_quad_map(&m, &q);
+   fail_if(ret != EINA_TRUE);
+
+   fail_if(m.xx != 3 || m.xy != 0 || m.xz != 0 ||
+           m.yx != 0 || m.yy != 3 || m.yz != 0 ||
+           m.zx != 0 || m.zy != 0 || m.zz != 1);
+
+   ret = eina_matrix3_quad_square_map(&m, &q);
+   fail_if(ret != EINA_TRUE);
+
+   fail_if(q.x0 != 0 || q.y0 != 0 ||
+           q.x1 != 3 || q.y1 != 0 ||
+           q.x2 != 3 || q.y2 != 3 ||
+           q.x3 != 0 || q.y3 != 3);
+
+   eina_shutdown();
+}
+END_TEST
+
 void
 eina_test_matrix(TCase *tc)
 {
@@ -374,4 +426,5 @@ eina_test_matrix(TCase *tc)
    tcase_add_test(tc, eina_matrix3);
    tcase_add_test(tc, eina_matrix3_operations);
    tcase_add_test(tc, eina_matrix3_f16p16);
+   tcase_add_test(tc, eina_matrix3_map_transform);
 }

-- 


Reply via email to