Commit Graph

648 Commits

Author SHA1 Message Date
Cedric BAIL 5e75d607c6 ector: initial introduction.
Idea for this library is to become a retained mode drawing library that use
Eo/Eolian for its API and take a lot of the good design from Enesim by
Jorge Zapata and Jose Gonzalez (http://enesim.org/).
2015-04-03 16:14:56 +02:00
Andy Williams 128a78940b eina: include blank lines in file iterator T2237
any line that would not have been included before has length == 0
2015-03-27 21:42:45 +00:00
Andy Williams a6290f8505 eina: Change newline parsing to handle crlf better
Adjust test to demonstrate failure, existing code only worked for
windows newlines on blank line.
@fix T2236
2015-03-27 09:56:22 +00:00
Jean-Philippe ANDRE 6638c7af90 Evas: Fix invalid test case
No idea how it worked before. It shouldn't. It was invalid.
But somehow evas_suite decided to start crashing on this test.
2015-03-23 15:56:40 -07:00
vivek 54bedbe1f1 eina: add test cases for various eina xattr data type functions
Summary:
Added test cases for eina_xattr_string_set, eina_xattr_int_set and
eina_xattr_double_set functions

Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2218

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-23 19:29:59 +01:00
Daniel Zaoui b191379d1d Eolian: add API to determine if a function is implemented.
This is needed in Erigo to determine if a virtual pure function can be
invoked via eo_do, as we don't want error messages to be displayed in
case of a non implementation in the Eo object.
This function works with non virtual functions too.

Tests have been provided.

@feature
2015-03-19 12:37:38 +02:00
Srivardhan Hebbar 5a0588c256 ecore_con: add tests cases to cover more scenarios in local sockets.
Summary:
In this patch, ecore_test_ecore_con_local_system_negport test case was failing.

Note that this patch does play with some environment variable to check more
code path in ecore_con.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2176

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-18 15:57:28 +01:00
Srivardhan Hebbar fcd9a331a6 ecore_con: add test case for download related functions.
Summary:
This has test cases for download related functions. Will make url
configurable and add post/upload related functions in the coming patch.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2175

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-18 15:45:26 +01:00
Daniel Zaoui d33508f407 Tests: fix warnings.
@TAsn, I checked the code to be sure nothing is wrong :P
2015-03-18 11:26:29 +02:00
pierre lamot de767cabfa eio: don't restart a monitor on MacOSX when every paths have been removed.
This patch check that when a monitor is removed the FSEvent service, it is
not restarted if there is no more paths to monitor. This was generating an
error message from FSEvent.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-17 10:42:51 +01:00
Cedric BAIL f875f759ca emile: fix coding style with ecrustify. 2015-03-17 09:58:21 +01:00
Cedric BAIL 0b04186a7f emile: initial introduction of Emile.
The intent of Emile is to be the common layer for serialisation, compression
and ciphering. It will expose the library we currently use internally to an
easier use from the outside (like gcrypt and lz4). It should improve portability.
Instead of pushing JSON, XML and what's not to Eina, I do think that they will
fit better in Emile.

As for the naming of Emile, you will need to be French and say :
"Un quoi ?" "Un serializer !"

Regarding why it is put there in the stack. Right now there is two users of
compression (eet and terminology), two users of cipher library (eet and ecore_con)
and a few handful of user for serialization (eina, eet, efreet, ecore_con, ...).
So the choice was quite simple, it needed to be below Eet. Now it could have been
on top of Eo or integrated into Eina.

One of the use case I am thinking of, is to compress Eo object when a canvas get
hidden/minized. For that it require Eo to use that library and it can't be a higher
level object. And with current implementation of Eo it is perfectly possible to
implement such idea. So not at Eo level.

As for Eina, I am starting to think it is getting to much things in its namespace.
I do believe that infact Eina_Simple_XML and Eina_File should after all have landed
in their own library. That's why I am putting the current logic in a new library.
It is going to expand, I want it to provide an few SAX like parser for JSON,
Eet_Data and protobuf with also an API like Eet_Data to directly feed those value
into a C structure without using a DOM at all. It would also be the right place
to experiment and benchmark for a new Eet_Data format that could be more efficient
to use.

So at the end, and due to how I see things going and being used, I do think it
is better of in its own library.
2015-03-17 09:58:17 +01:00
Daniel Zaoui 57a4cae33b Eolian: add API to return the class from a function.
@feature
2015-03-16 17:32:30 +02:00
Cedric BAIL 1689564958 eina: fix warning due to sign vs unsign tests. 2015-03-13 09:33:29 +01:00
Cedric BAIL 7c0b51f710 eina: xattr order is not guaranty at all, fix the test accordingly. 2015-03-13 09:33:29 +01:00
Srivardhan Hebbar cd5e21591a ecore_con: add more test cases related to ssl functions.
Summary:

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2137

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-13 09:33:29 +01:00
vivek 9622f76cac eina: add test cases for eina_xattr.
Summary:
Added test cases for various eina_xattr_list functions and eina_xattr_copy functions

Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2114

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-13 09:33:29 +01:00
Cedric BAIL 65d0c2a1e1 ecore: don't leak directory during testing of Ecore_File infrastructure. 2015-03-13 09:33:28 +01:00
Cedric BAIL 458373e795 eina: don't leak directory during testing of Eina_File infrastructure. 2015-03-13 09:33:28 +01:00
Cedric BAIL 85b5393ea9 ecore_con: fix uninitialized warning in tests suite. 2015-03-12 07:43:59 +01:00
pierre lamot d958afd9fd eio: add OSX implementation of eio_monitor based on FSEvent
this patch adds an implementation of eio_monitor based on FSEvent
for OSX. This implentation has some limitations compared to inotify
implementation. Folowing events are not detected:
  - EIO_MONITOR_FILE_CLOSED
  - EIO_MONITOR_SELF_RENAME
  - EIO_MONITOR_SELF_DELETED

It should be noted that some events that happend before the call
to eio_monitor_add can be catched. This is why sleep timers have
been added in the test suite.

Tests have been added to check uncovered scenarios.

some things might still be improved:
  - self_deleted events for files might be handled by checking the
    file_name manually

  - self_deleted events for directories might be handled by setting
    kFSEventStreamCreateFlagWatchRoot. I've noticed by doing so that
	a lot more unwanted event are raised

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-12 07:43:59 +01:00
plamot 19200a878a eio: add unit tests for eio file and directory monitoring.
this patch adds units test to check the behavior of eio file
and directory monitoring module

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-12 07:43:58 +01:00
vivek a6b5ee94f0 eina: add test cases for eina_xattr functions.
Summary:
Add eina_test_xattr.c file for testing eina xattr functions and added test
cases for eina_xattr_set and eina_xattr_fd_set functions. Those tests need
a directory where the underlying file system allow xattr. Usually /tmp is
running on tmpfs that doesn't support today xattr. This test won't be run
if we are not provided with an existing proper directory.

Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2090

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-06 20:19:21 +01:00
Srivardhan Hebbar 5b27425782 ecore_con: add test cases related to SSL.
Summary:
Add test cases related to SSL. Now it is not crashing and all test cases passes.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2095

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-06 20:19:21 +01:00
vivek 053430739e eina: add test case for eina_memdup in eina str
Summary:
Added test case for eina_memdup function in eina_str test module

Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2026

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-25 17:46:16 +01:00
Tom Hacohen a791d97bfc Eo: Remove GCCism and make it more portable.
This affects eo_do() and eo_add() that used to use the ({}) GCCism.
Following a discussion with Peter de Ridder after my talk at FOSDEM,
we've decided to reopen the GCCism (works with other gcc compatible
compilers like clang and intelc) discussion, and after a bit of back and
forth it was decided to make things more portable, at the cost of ease
of use.

For example:
if (eo_do(obj, visible_get()))
is no longer allowed, the portable alternative
Eina_Bool tmp;
if (eo_do_ret(obj, tmp, visible_get()))
is to be used instead.

However:
eo_do(obj, a = a_get(), b = b_get(), bool_set(!bool_get))
are still allowed and OK.

eo_do(obj, if (a_get()) return;);
is no longer allowed, but:
eo_do(obj, if (a_get()) something());
is still allowed.

For clarity, this commit only incorporates the Eo changes, and not the
EFL changes to make the efl conform with this change.

Thanks again to Peter de Ridder for triggering this important discussion
which led to this change.
2015-02-23 17:16:02 +00:00
Cedric BAIL 272e8b70ff ecore: remove warning from tests case. 2015-02-23 17:35:22 +01:00
vivek 2e260f019a eina: add test case for eina unicode escape function.
Summary:
Added test case for eina_unicode_escape function

Signed-off-by: vivek <vivek.ellur@samsung.com>

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1963

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-20 12:24:18 +01:00
Stefan Schmidt 7415a5fc36 tests/evas: Enable evas 3d mesh test case again after the code got fixed.
The problem have been in the new evas block/unblock code which did not work
for evas 3d. Thanks to Bogdan for spotting it and raster for reverting the
3d part for now to keep the code working.

Fixes T2104
2015-02-12 14:45:53 +01:00
Daniel Kolesa 687e5130d8 eolian: add testcase for nullable/optional 2015-02-12 13:42:57 +00:00
Stefan Schmidt 46829c05fe Revert "ecore: fix path comparison in Ecore_File test suite."
This reverts commit 66c0f3261d.

This commit breaks the eina_file suite on Gentoo (our jenkins OS).

ref T2105
2015-02-12 10:47:02 +01:00
Stefan Schmidt 8c7c48a3f7 tests/evas: Disable segfaulting evas_object_mesh_loader_saver
This test case segfault on jenkins as well as on my devel machine.
Disable until fixed.

ref T2104
2015-02-12 10:23:50 +01:00
Bogdan Devichev 1506130866 evas: Evas_3D - iport/export of Obj format can be read even if obj-file does not have normals or tex-coords.
Summary:
This commit fixed several bugs, and show what was be fixed.

Bugs:
- When designer save obj file in Blender, he/she can set flags (fig 1). Normals and UV coords flags was necessary  for obj loader. Loader crushed when they are not set as true. It fixed by this commit.
- Another loaders set default values to data which aren't in loading file, so mesh need more memory for unused data. It fixed by this commit for obj and will be fixed for another formats in future.
- Saver saved incorrect data if normals or tex_coords was not set in mesh in evas. Now it fixed.
- Saver failed if it save mesh without material. It fixed and in this case material file is not created now.
- Also fixed some leaks and undefined behavior which valgrind shows.

Example:
- Example shows cases described above. Example use files saved with different flags for it.

Resources:
- man_mesh is replaced by several smaller file, to use them for showing new features and fixes. For example, similar to that models can be added when implement work with material for obj, work with different flags for obj loader/saver etc. (big count of man_meshes is to much memory).
- texture for home is flipped, because of bug with texture in efl to see if tex_coords is incorrect.

Test:
- test should be rewritten in future, because another formats still use default values for normals and tex_coords. And test can not pass for all types of obj file because of standardization for any format in him.

Test Plan: Test suit will be rewritten after correcting of other formats (they will set NULL to file when save an empty data (like mesh without normals))

Reviewers: Hermet, raster, cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1957

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-11 18:31:53 +01:00
Srivardhan Hebbar 53172c2d79 ecore_con: add ecore con client functions for testing.
Summary: Added ecore con client functions to the existing cases to cover more functions.

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1958

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-11 17:23:35 +01:00
michelle legrand bbba9198db eolian: add right extension to eolian_gen if we are on Windows
In previous version of this commit we checked if the _WIN32 macro was
defined. But now I am using EXEEXT from autotools to get
eolian_gen extension.

@fix
2015-02-11 17:03:37 +01:00
Srivardhan Hebbar 024880add4 ecore_con: add test cases to test ecore_con_server and client with different options.
Summary: Before ecore_con_server_add and client add with only TCP sockets. Have made that function generic and testing for other options too. Not all options are covered. Need to add different kind of cases for other options. Will check how I can add and add.

Reviewers: stefan_schmidt, cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1939

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-09 22:03:27 +01:00
Youngbok Shin 2d40315127 evas text: fix _ellipsis_get to return -1.0 on failure.
Summary:
When getting ellipsis value from evas text object fails,
the most reasonable return value is -1.0.
Currently, evas_object_text_ellipsis_get API with NULL returns 0.0.
It means ellipsis is not off. It must return -1.0 when API fails.
@fix

Comments by Tom: until now, this was inconsistent. With this change, it
now returns -1.0 consistently. Also, fixed commit summary.

Reviewers: woohyun, Hermet, seoz, tasn

Reviewed By: tasn

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1944
2015-02-09 17:31:35 +00:00
Tom Hacohen f7a6880d5b Eina tmpstr: deprecate tmpstr_strlen and add tmpstr_len.
Confusingly enough, strlen was actually returning strlen + 1 for
strings. The new functions behaves as expected.
2015-02-09 13:55:13 +00:00
pierre lamot 8c56edbdf5 eina: fix eina_test_rwlock test on OSX.
add a reimplementation of clock_gettime for OSX within the test in
order to be able to test eina_condition_timedwait

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-05 16:38:06 +01:00
pierre lamot 9ee7f46eb3 ecore: check that a test doesn't enter in an infitie loop.
check that ecore_test_ecore_thread_eina_thread_queue_t6 doesn't
enter in an infinite loop if something goes wrong, if the main thread
doesn't receive the message number 10000

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-05 16:38:06 +01:00
pierre lamot 17e73dca05 evas: jpeg decoders alows a difference of 1 bit per component.
The required precision of decompressed images allows a difference of
1 bit for each pixel compoment [1] . Such difference has been noticed
on OSX when using libjpeg9 from macports.

evas_suite images tests has been modified to compare jpeg images with
this tolerance. Other image formats are still compare with exact
precision

[1] http://en.wikipedia.org/wiki/JPEG#Required_precision

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-05 16:38:06 +01:00
pierre lamot 66c0f3261d ecore: fix path comparison in Ecore_File test suite.
The Ecore_File test suite was comparing path with strcmp,
which can lead to incorect comparison in some case (comparing
realpath and expected path for instance)

This patch adds a function to compare paths within this tests. Paths
are compared by getting the "realpath" of each operand

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-05 16:38:06 +01:00
pierre lamot 019b9e55c9 eina: memcmp can't be used to compare timeval due to potential padding on 64bit architecture.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-05 16:38:06 +01:00
Daniel Hirt d503dbeed1 eina: Eina_File - add test case for path resolution.
Summary:
This is a follow-up to the 7cbf22212f
revert commit. It's a bit late, as the issue has already been fixed with
the later 7143bd7fb5 commit.

This test checks eina_file_sanitize "../" case with absolute paths (i.e.
that start with "/"), and should fail prior the revert mentioned above.

Should come up with more tests like this one.

Reviewers: stefan_schmidt, cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1937

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-05 15:37:15 +01:00
michelle legrand 96b4cbac7e eina: fix tests suites for Windows to have a predictable result.
@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-01-30 10:49:57 +01:00
michelle legrand b71229ac47 check: fix tests suites on Windows
Disable timeout because we cannot fork on Windows.

@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-01-30 10:49:54 +01:00
michelle legrand 9431cde70e eolian: fix to pass make check on windows
@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-01-30 10:49:53 +01:00
michelle legrand 1d28bcdcf1 eo: fix to pass make check on windows
@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-01-30 10:49:52 +01:00
michelle legrand 24386fcd9c autotools: fix make check build error on Windows
Windows does not use ECORE_X.

@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-01-30 10:49:50 +01:00
Cedric BAIL 311ea67b65 evas: add new test for bug in BMP loader. 2015-01-26 11:02:14 +01:00