Commit Graph

1286 Commits

Author SHA1 Message Date
Jean-Philippe Andre e2176ed6a3 Edje: Replace edje_box_part with a fake eo proxy
This is basically an implementation of eo_part() but only
for Edje Box APIs. Legacy API is implemented on top of the
EO API.
2016-04-26 11:36:23 +09:00
Jean-Philippe Andre 24177057d0 Edje tests: Add test case for access_part_list
This tests eo and legacy apis
2016-04-26 11:36:23 +09:00
Jean-Philippe Andre e1092b84eb Edje: Adapt to Efl.Container
This basically renames swallow into content.
2016-04-26 11:36:23 +09:00
Jean-Philippe Andre 902950018b Efl: Introduce Efl.Container and unify APIs
This removes Efl.Pack_Named which had a terrible name,
removes Elm.Container which should have been renamed
Efl.Ui.Container anyway, and introduces an interface
Efl.Container instead.

The hierarchy tree is now changed as objects don't inherit
from Efl.Container (it's an interface, not a regular class)
but only implement it. Obviously it is very easy to
reintroduce an Efl.Ui.Container parent class if we need it,
but I guess it should have some actual logic. It's basically
part of what Elm.Widget already does.

Some function names have been modified to look better in C
with the efl_content prefix.

@feature
2016-04-26 11:36:23 +09:00
Felipe Magno de Almeida 535a069a23 eolian-cxx: Remove .Base requirement
Remove requirement that class can't have the same name as another
class's namespace.
2016-04-21 18:31:53 -03:00
Stefan Schmidt a41f9ad870 tests: eo: switch to generic eo_key_del, fix build
Since 5e09d1307b we use the generic eo_key_del
for all of these.
2016-04-21 11:41:44 +02:00
Carsten Haitzler 5e09d1307b eo base - remove the duplicated key dels and just do eo_key_del() now
this rationalizes all the duplicated key dels (key_data, key_obj and
key_value).
2016-04-21 18:02:31 +09:00
Carsten Haitzler 26b5eb8a26 eo base - add loop_get for base class
base class objects will ask their parent object to get the loop. this
means it recurses all objects regardless of type until it finds an
object that returns a proper loop object - eg a loop object returns
itself, a window, gfx/ui object returns the mainloop object etc. etc.

@feature
2016-04-21 15:19:36 +09:00
Cedric BAIL c0bce3e23e eolian: add tests for restartable event. 2016-04-20 15:53:33 -07:00
Cedric BAIL 7cb53a3ae2 eo: let's check that this nested restarted event are working somehow. 2016-04-20 15:52:41 -07:00
Stefan Schmidt 500750323d tests: fix another redefine of Ecore_Cb build break 2016-04-20 15:31:13 +02:00
Tom Hacohen 115b69fd47 Eolian cxx tests: don't redefine Ecore_Cb. 2016-04-20 13:30:50 +01:00
Carsten Haitzler bc4d43a1cc eo base: names - add finding functions to fund by name
this finds child objects by walking the child tree searching children
by using the search string which can be name, class:name and both
class and name can also be a glob.

@feature
2016-04-20 18:29:41 +09:00
Carsten Haitzler 45456d9e82 eo base - add value keys in addition to object and void ptr data keys
eina value would allow any value to be attached to an eo object and
also be freed nicely too. this would allow any generic data to go
there without overloading a void * that us c coders love to abuse.

@feature
2016-04-19 18:36:57 +09:00
Carsten Haitzler 96142eef96 eo - add object comments - esp useful for erigo and gui builders
also useful for debugging and more. this also makes both name/id and
comment an extension blob of ram so objects dont keep growing
boundlessly in memory usage/size

@feature
2016-04-19 17:21:21 +09:00
Carsten Haitzler 86e7d642d5 eo - add object names/ids esp useful for erigo as it wants object names
also evas objects have names too, so add this as this was discussed
and now the feature is in. there is nothing to find objects by name
yet. that's more api's and features to add after this.

@feature
2016-04-19 16:34:53 +09:00
Carsten Haitzler 1bf509548c eina value test - gix blob check to check only relevant fields
the value check for blobs was checking unused fields in a union and
thats just bad. check only fields that matter to the blob.

@fix
2016-04-19 16:33:33 +09:00
Jee-Yong Um 11cdd13945 edje: add test for edje_object_part_box_insert_after()
Summary:
This test checks the validity of edje_object_part_box_insert_after().
It depends on D3733.

Reviewers: jpeg, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-04-18 16:21:07 -07:00
Tom Hacohen 70537370a1 Edje tests: Add parent upadting tests to edje. 2016-04-18 10:10:23 +01:00
Tom Hacohen cd26435434 Elm layout: Add parent updating tests to elm layout. 2016-04-18 10:10:23 +01:00
Tom Hacohen b337558fd6 Edje tests: Fix tests when running out of source and remove hack.
There was a seriously horrible hack here to workaround this issue. This
hacks goes all the way back to 3e07236. The essence of the hack was to
try the system files for the tests (and I guess that's why we were
shipping them although we really shouldn't).

This change fixes the file lookup for out of source files.

Hat-tip to zmike for pointing me to abs_top_buildir.
2016-04-15 18:18:22 +01:00
Tom Hacohen 68417186a9 Elm test layout: Fix indentation. 2016-04-15 15:41:36 +01:00
Tom Hacohen c1781eb9c8 Elementary tests: Migrate the suite to the efl test infra. 2016-04-15 14:39:56 +01:00
Chris Michael 08482e1ca4 elput: Add test framework for Elput library
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13 14:16:17 -04:00
Felipe Magno de Almeida 35dd5b5cab eina: Fix promise error with eina_promise_all
Fix value_set and error_set signatures which were receiving a
owner. They actually receive the promise and not the owner, this
caused wrong access to memory and were not visible by warnings because
the functions are casted.

This problem caused errors in which it seemed that promise had
actually error'ed when questioned it.
2016-04-13 14:44:19 -03:00
Cedric BAIL fedc8939cc eldbus: make tests suite more robust to initialization count change. 2016-04-12 10:40:58 -07:00
Carsten Haitzler 8be56c9498 eo - add object sotrage in generic values with ref/unref
this adds eo_key_obj_set/get/del() like with data but for object
handles so the obj is ref'd as long as the key and parent obj exists
and then unreffed on deletion. it also tracks deletion of reffed
objects like weak refs and then removes the key automatically.

@feature
2016-04-13 01:06:40 +09:00
Stefan Schmidt 5065356ae6 tests/eldbus: add now needed calls to ecore_init/shutdown
Since commit 53c66c98c2 eldbus o longer calls
ecore_init() wo we need to handle this. Fixes the edlbus tests cases.
2016-04-12 17:22:28 +02:00
Stefan Schmidt 8712f03f57 tests/eldbus_cxx: add ecore_init calls in tests now that eldbus does no longer
Since commit 53c66c98c2 eldbus o longer calls
ecore_init() wo we need to handle this. Fixes edlbus_cxx tests cases.
2016-04-12 16:55:48 +02:00
Tom Hacohen de1a7759fa Eina matrix/vector tests: pass correct pointers to arrays.
Clang (rightfully) complained about passing double ** where we should have
passed a double *.
2016-04-12 15:45:10 +01:00
Tom Hacohen 1d71d21d35 Eet test: renamed shadowing variable. 2016-04-12 15:40:49 +01:00
Tom Hacohen b4da02cac2 Elm test web: Correctly disable the web tests.
This gets rid of some clang warnings.
2016-04-12 15:39:36 +01:00
Tom Hacohen f14305024e Eo event: rename Eo_Event->event_info to Eo_Event->info.
The previous naming was redundant and too long.
2016-04-12 15:23:55 +01:00
Felipe Magno de Almeida 62841aee3c eolian: Make promise eolian generation use macros for hooks
Modify the way hooks are defined and used by promise generation in
Eolian in the Eo API.

Instead of passing macro names as parameters to EO_FUNC_BODY macros,
just re-define the actual hooks when it is needed.
2016-04-11 01:28:50 -03:00
Tom Hacohen 1b14a33a91 Elm tests: Silence warnings in the unused elm prefs test. 2016-04-08 11:35:18 +01:00
Youngbok Shin f4f9753c20 Evas: Add API to reinit the language and use it in elementary.
Summary:
evas_common_language_from_locale_* functions kept static pointers
inside of its functions. Once these function was called, it was never reset.
It made big problems for harfbuzz and hyphenation. Also, Elementary
provides elm_language_set() API. Then we need to support it fully.
@fix

Test Plan: Test case for hyphenation is included in Evas test suite.

Reviewers: raster, tasn, herdsman, woohyun, z-wony, Blackmole, minudf

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3864
2016-04-08 11:24:32 +01:00
Felipe Magno de Almeida dc954d8dba eolian: add Eolian support for Eina Promises
Add a promise object to allows Eolian interface to include promises
as a way to have asynchronous value return and composibility.

The usage is like this in a .eo file:

class Foo {
   methods {
      bar {
         params {
            @inout promise: Promise<int>;
         }
      }
   }
}

Which will create the following API interface:

void foo_bar(Eo* obj, Eina_Promise** promise);

and a Eina_Promise_Owner for the implementation, like this:

void _foo_bar(Eo* obj, Private_Data* pdata, Eina_Promise_Owner* promise);

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-04-06 14:34:15 -07:00
Felipe Magno de Almeida 944e11559c eo: add before and after macro hooks for API generation functions
Add two parameters for macros that generate API functions in Eo so
that the generation can be customized with macros used by Eolian.

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-04-06 14:32:04 -07:00
Tom Hacohen c6159e042b Eo tests: Also test function calls in reinit test.
Since we cache ops we also need to check function calls work
when we reinit eo, not just class_get functions.

This commit essentially verifies that
5284b62e93 was done correctly.
2016-04-06 11:15:24 +01:00
Felipe Magno de Almeida f534fb8943 ecore: add tests for promises with ecore_thread_promise_run
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-04-05 11:35:12 -07:00
Felipe Magno de Almeida 1d314828f7 eina: add tests for promises 2016-04-05 11:35:12 -07:00
Jean-Philippe Andre 21a7bc8a3c eolian: Fix test cases
So sorry I missed this in my weak API patch! Bad JP didn't run
make check.
2016-04-05 20:44:57 +09:00
Cedric BAIL 69d62751f2 elementary: the test are time based which make them race prone, longer delay reduce potential issue. 2016-03-29 14:53:38 -07:00
Jean-Philippe Andre ba4ffba8c1 Evas: Add a test case for image buffer_map.
This:
1. opens a file
2. maps its data and vaguely verifies it
3. writes data to it
4. writes data to it with a GRY8 map
5. verifies that the final image has all the proper pixels
2016-03-28 16:40:02 +09:00
Jean-Philippe Andre 015554e57e Evas 3d: Hide warning with clang
An otherwise good looking macro triggers a warning with clang,
because of self comparison of constants (always true or always
false). Let's just silence the warning in this specific spot
with a pragma.
2016-03-28 15:53:15 +09:00
Tom Hacohen 5bcb9fe528 Merge Elementary into the EFL
Some things may still be broken, but Cedric will progressively fix
things as they pop. Default configuration works as expected.
2016-03-24 18:50:47 +00:00
Cedric Bail fe83a09b67 elementary: disable some ATSPI test that I can't figure out why they fail. 2016-03-24 11:23:11 -07:00
Jiwon Kim c23283944b Evas textblock: fix null-derefernce in _style_match_tag()
Summary:
add null check in _style_match_tag()
if evas_object_textblock_text_markup_set() is called with markup text before setting style,
segmentation fault is occurred in _style_match_tag()
@fix

Test Plan:
Insert this situation to test suite
 -> test id : evas_textblock_simple

Test for without this patch:
 1. apply patch just "src/tests/evas/evas_test_textblock.c" partially.
 2. $make check

Test for with this patch:
 1. apply this patch completely (2 files)
 2. $make check

Reviewers: id213sin, herdsman

Subscribers: Blackmole, cedric, jpeg

Projects: #efl

Differential Revision: https://phab.enlightenment.org/D3818
2016-03-24 10:17:57 +02:00
Cedric BAIL c2a1c49ab2 elementary: move all legacy files to their expected new location. 2016-03-23 13:24:41 -07:00
Daniel Hirt 4013dccda6 Evas font: fix width calc in last_up_to_pos
Width calculations should consider the x_bear. This has been leading to
inconsistent results between wrapping calculation during layout and the
final formatted size.

Also, we should stop our walk only when exceeding 'x', so changed "<="
to "<".

@fix
2016-03-23 15:31:20 +02:00
Vitor Sousa afb6646393 efl js: Add clean up callbacks to deallocate memory used in v8::External
Add several garbage collector callbacks for cleaning allocated C and C++
data used inside v8:External objects.

Fix eo_unref of already freed object in eo_js_construct_from_eo.hh.

Ensure all structs are allocated with malloc.

Add test for garbage collection.
Had to created .sh script because shebang clause do not support multiple
arguments.
2016-03-18 17:47:09 -03:00
Vitor Sousa a6025b5d27 efl js: Finish Eina_Iterator binding 2016-03-18 17:47:09 -03:00
Lauro Moura 1422e62f30 efl js: Fix naming of manual binding functions.
Also removed references to the discarded manual binding "ecore_js_file".
2016-03-18 17:47:09 -03:00
Vitor Sousa fd0cf8b764 eina_cxx: Add specialized eina::iterator for Eo* wrappers
Add specialization of eina::iterator for Eo* C++ wrappers.

Specialize ibegin/iend methods in eina::list and eina::array of
Eo* wrappers to use the new eina::iterator.

Add unit test.
2016-03-18 17:47:09 -03:00
Vitor Sousa a85348b70b efl js: Update Javascript binding to compile with new Eolian API
Reword test method names to check naming convention.
2016-03-18 17:46:38 -03:00
Jean-Philippe Andre 72363b4777 tests: Remove unused variables (evas_image) 2016-03-18 13:53:39 +09:00
Jean-Philippe Andre b8f682b842 Efl.Gfx.Fill: Rename filled to fill_auto
fill_filled is a strange name for the property.
fill_auto seems to make more sense. If you disagree, scream at
me or revert this commit.
2016-03-18 13:28:45 +09:00
Oleksandr Shcherbina 48f75713e5 eina: fix eina vector in case output vector the same as target vector
Summary:
Use aditional temporary vector for intermedia results in case output vector
the same as target vector in functions:
eina_vector2_transform,
eina_vector2_homogeneous_direction_transform,
eina_vector3_cross_product,
eina_vector3_transform,
eina_vector3_homogeneous_direction_transform
It was in original version (in evas_vecN, module evas_3d_utils.h)
Enrich test suit for this case.

Reviewers: jpeg, cedric

Reviewed By: cedric

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-03-15 11:20:55 -07:00
Tom Hacohen 8706d03b43 Change the EFL according to the renaming of the eo_add() current object. 2016-03-15 15:25:54 +00:00
Jean-Philippe Andre bd7af3ecfe Edje: fix tests snap 2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 06cf9e6bea Evas.Image: Complete implementation of proxy and snapshot
This moves the EO APIs away from Evas.Image and adds the required
legacy bindings.
2016-03-15 11:11:59 +09:00
Jean-Philippe Andre 2d10127524 Evas image: Move filled property to Efl.Gfx.Fill and set as default
The filled property should be set to true by default since it
makes more sense. Legacy APIs behaviour is preserved by setting
the default to false.
2016-03-15 11:11:59 +09:00
Daniel Kolesa 22875f066c eolian: builtin support for event callback signature 2016-03-14 17:16:41 +00:00
Stefan Schmidt e916eae38a tests eeze: enable eeze_net IPv6 test again and skip if impossible
The test depends on the host system having IPv6 setup on the loopback device.
This is not always the case even if we have a system that does have
"struct ipv6_mreq", our HAVE_IPV6 test, and would support it.

Skip here if we can't fetch an IPv6 address. The IPv4 test is still running
regardless.
2016-03-11 17:59:46 +01:00
Tom Hacohen 81240669e8 Revert "Ector and eo suite: Semi automatically migrate to the new eo_add."
This reverts commit df83edaeb6.
2016-03-11 12:29:03 +00:00
Tom Hacohen f24210caac Revert "Automatic migration to the new eo_add syntax."
This reverts commit 4f949a2757.
2016-03-11 12:29:03 +00:00
Tom Hacohen 72c6236038 Revert "cxx: Migrate C++ binding to the new eo_add syntax"
This reverts commit 48f62ad686.
2016-03-11 12:29:03 +00:00
Vitor Sousa 48f62ad686 cxx: Migrate C++ binding to the new eo_add syntax 2016-03-09 15:46:19 -03:00
Tom Hacohen 4f949a2757 Automatic migration to the new eo_add syntax. 2016-03-09 16:09:14 +00:00
Tom Hacohen df83edaeb6 Ector and eo suite: Semi automatically migrate to the new eo_add.
There were some issues with the migration that required manual
intervention.
2016-03-09 16:09:14 +00:00
Stefan Schmidt 2d0d2802bf tests evas: enable xpm image loader in tests
Added in 2014 and not enabled since then. This seems to be fixed now so we can
finally enable it.
2016-03-09 15:25:35 +01:00
Stefan Schmidt 312dd58889 tests evas: remove commented out function which have not been used since 2014
It was already unused when it was disabled almost two years ago.
dbe02d593e
Its about time to remove it.
2016-03-09 15:25:35 +01:00
Tom Hacohen 7d8cd6c40f Revert "ecore: Create Promises"
Reverting this at Felipe's request following my email. There are many
things I strongly object to in this commit. I've touched the surface of
those on the ML (which doesn't work at the moment), though we need to
better discuss it.

The gist:
1. dlsym is a really bad hack that is not even needed.
2. I don't see why eo should even be aware of promises. It's not aware
of list, hash and etc.
3. The eolian changes were done wrong.

This should have been discussed and consulted before done, even if only
because of the amount of hacks it includes and the cross-domain (ecore,
eo and eolian) nature of it.

This reverts commit f9ba80ab33.
2016-03-08 14:23:57 +00:00
Stefan Schmidt 35c577578a tests eolian: add test cases for type stub generations
While we had the functionality to generate type stubs header we never had
these tested in our unit test setup. Adding to simple cases for struct
and typedef which we already use for normal header generation tests.
2016-03-08 11:14:56 +01:00
Carsten Haitzler 3df71ab0f6 eo del interceptor: add the ability to intercept deletions of eo objects
Imagine this. You have an object. You pass this object handle as a
message to another thread. Let's say it's not a UI object, so
something you might expect to be able to be accessed from multiple
threads. In order to keep the object alive you eo_ref() it when
placing the message on a queue and eo_unref() it once the message is
"done" in the other thread. If the original sender unref()ed the
object before the message is done, then the object will be destroyed
in the reciever thread. This is bad for objects "expecting" not to be
destroyed outside their owning thread.

This allows thius situation to be fixed. A constructor in a class of
an object can set up a delete interceptor. For example if we have a
"loop ownership" class you multi-ple-inherit from/use as a mixin. This
class will set up the interceptor to ensure that on destruction if
pthread_self() != owning loop thread id, then add object to "delete
me" queue on the owning loop and wake it up. the owning loop thread
will wake up and then process this queue and delete the queued objects
nicely and safely within the "owning context".

This can also be used in this same manner to defer deletion within a
loop "until later" in the same delete_me queue.

You can even use this as a caching mechanism for objects to prevernt
their actual destruction and instead place them in a cached area to be
picked from at a later date.

The uses are many for this and this is a basic building block for
future EFL features like generic messages where a message payload
could be an eo object and thus the above loop onwership issue can
happen and needs fixing.

This adds APIs, implementation, documentation (doxy reference) and tests.

@feature
2016-03-08 16:57:22 +09:00
Stefan Schmidt da309d6863 tests: get rid of Eo_Event2 in cxx tests
Hopefully the last occurance of Eo_Event2 in our code base. Fixes a build break.
2016-03-07 14:19:46 +01:00
Felipe Magno de Almeida f9ba80ab33 ecore: Create Promises
Add a promise object that allows Eolian interface to include promises
as a way to have asynchronous value return and composibility.

The usage is like this in a .eo file:

class Foo {
   methods {
      bar {
         params {
            promise: Promise<int>;
         }
      }
   }
}

Which will create the following API interface:

void foo_bar(Ecore_Promise** promise);

and the equivalent declaration for implementation.

However, the API function will instantiate the Promise for the
user and the implementer of the class.
2016-03-06 17:55:33 -03:00
Stefan Schmidt d32aa995e0 tests: disable loading of the scim module as this can causes hangs of the tests
With scim installed we can run into hangs of the test suite when the ecore_imf
scim module tries to connect to the scim on the system. This has happened again
and again on different installations and made the test suite really fragile.

We would need to make sure that scim is configured on the host before we could
run this test. It might be a candidate for skipped tests where we check if the
env has all we need to run the test and if not skip it. We don not have all the
needed pieces in place for this so the best we can do to make the test runs less
fragile is disabling scim module loading for now.
2016-03-04 15:41:42 +01:00
Tom Hacohen 11b3e3ec89 Eo tests: Add tests for null (invalid) array callbacks. 2016-03-04 14:29:20 +00:00
Tom Hacohen b55ec7a34e Eo: remove the long deprecated eo_data_get.
It has been deprecated for a while, and now it's time to actually stop
using it.
2016-03-04 14:23:02 +00:00
Tom Hacohen 70e900db10 Eo tests: Test more cases with legacy events. 2016-03-04 14:21:08 +00:00
Tom Hacohen b5b843bcde Eo tests: Increase coverage for children iterator tests. 2016-03-04 14:16:30 +00:00
Tom Hacohen d72b336f69 Eo tests: add more eo_data_get tests. 2016-03-04 14:09:34 +00:00
Felipe Magno de Almeida 5c7d78d104 eolian-cxx: Partial fix for generation without eo_do 2016-03-03 16:05:40 -03:00
Daniel Kolesa cb42da514b eolian: initial conversion of C gen and tests to new type APIs 2016-03-03 18:58:11 +00:00
Tom Hacohen f1b1c5354b Manually fix extra eo_do calls that were added after I migrated 2016-03-03 10:03:55 +00:00
Tom Hacohen 23a6b12183 Fix migration script mistakes and compilation warnings.
Mostly unused vars following the removal of eo_do_ret().
However, there are some cases where the migration script got some things
wrong, and I had to manually fix them.
2016-03-03 09:58:08 +00:00
Tom Hacohen 8780da1fbd Eo tests: Update tests according to the new syntax
These tests don't use eolian, but are plain Eo, so they need manual
updating.
2016-03-03 09:58:08 +00:00
Tom Hacohen f21ade6123 Automatic migration to Eo4.
I just ran my script (email to follow) to migrate all of the EFL
automatically. This commit is *only* the automatic conversion, so it can
be easily reverted and re-run.
2016-03-03 09:58:08 +00:00
Tom Hacohen 438e1db893 Manually semi-migrate files in preparation for the script
The migration scripts breaks with some weird cases, here I manually
migrated some parts, and just removed the eo_do from others without
actually migrating (so I could deal with that later).
2016-03-03 09:56:20 +00:00
Daniel Kolesa b8c820db17 eolian: fix generation tests 2016-03-03 09:53:23 +00:00
Stefan Schmidt 8992c2aeae tests cxx: remove superfluous output to stdout
These outputs are not giving any more information besides what we already get:

Ecore C++ headers compilePASS: tests/ecore_cxx/cxx_compile_test

(Ignoring the problem with the newline) The test name tells it all and we are
just filling the log.
2016-03-02 15:32:09 +01:00
Jean-Philippe Andre 2d9dc68d09 Evas filter: Add new test case for state and data set 2016-03-02 12:57:23 +09:00
Jean-Philippe Andre 77db872754 Evas filters: Use fail_if instead of fail in test case
This will give more accurate information in case of failure.
2016-03-02 12:57:23 +09:00
Jean-Philippe Andre 24f19dc770 Efl.Gfx.Filter: Rework APIs and mark as stable
- Remove @beta flags,
- Update @since to match stabilization,
- Change methods to properties with keys,
- Use eo_prefix and add filter_ prefix to all properties since
  they use very generic names,

The filter API stays under Efl.Gfx since there are other kinds of
filters, and this one is the particular "graphical filter" or
"effect" API.

The EO API mostly not change from an application point of view,
except for "source_get" which now returns a string directly. Also,
state and data can now be queried.
2016-03-02 12:57:23 +09:00
Felipe Magno de Almeida d40b046685 eolian-cxx: Fix C++ events with new Eo_Event_Cb signature 2016-02-29 11:01:04 -03:00
Tom Hacohen e71e6561ee Eo callbacks: Migrate all of the EFL to the new event cb signatures. 2016-02-29 11:33:27 +00:00
Tom Hacohen 84fd52921e Evas textblock tests: Fix wrong test suite tests.
The tests were assuming that textblock returns a sanitised utf8 string.
This is not always correct, because textblock may cache and return the
set utf8 markup if the text hasn't changed since the last set.
2016-02-26 09:36:44 +00:00
Daniel Kolesa eee5cc4fdc eolian: re-enable strict validation 2016-02-18 10:14:41 +00:00
Vivek Ellur d8166c7507 eina_strbuf: add test cases for eina strbuf prepend functions
Summary:
Added test cases for eina_strbuf_prepend_printf and eina_strbuf_prepend_vprintf
functions

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

Reviewers: raster, jpeg, cedric

Subscribers: seoz, jpeg, raster, cedric

Differential Revision: https://phab.enlightenment.org/D3163
2016-02-17 14:33:59 -08:00
Jean-Philippe Andre f649dac12f tests: Fix evas 3d tests after previous commit 2016-02-17 16:12:35 +09:00
se.osadchy a1584c8a5d evas: Update eina_vector, add new function.
Summary: Add direction transform for eina_vector3.

Reviewers: cedric, Hermet, jpeg

Reviewed By: jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3692
2016-02-17 16:12:35 +09:00
Youngbok Shin 471c7635ee Evas Text: Update text layout when ellipsis is changed without resize
Summary:
When only ellipsis is changed from 0.0~1.0 to -1.0 without resize,
the text is never updated. Because, previous state for ellipsis is never kept
and used properly to check when Evas Text needs to be updated.

It does not have any effect when ellipsis is changed from -1.0 to 0.0~1.0.
Because, Evas text always resize itself according to its text size.
So, necessarily, Evas text object has to be resized to the smaller size.
Commonly, Edje will handle its size if Evas text needs to be ellipsized.
@fix

Test Plan: Test case is included.

Reviewers: tasn, woohyun, herdsman

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3448
2016-02-16 17:42:11 +02:00
Tom Hacohen 936801e8bb Efl tests: Fix running of tests. 2016-02-16 13:03:20 +00:00
Tom Hacohen d3b7e067ef Efl tests: Fix dangerous coding style. 2016-02-16 13:01:00 +00:00
Tom Hacohen a47122c1ca Eeze test: Fix eeze test compilation. 2016-02-16 12:54:29 +00:00
Vincent Torri 66b60da444 Test rework
Summary:
Factorisation of the infra
make uniform all the tests

Test rework #1: Ecore

Test rework #2: Ecore_Con

Test rework #3: Ecore_Cxx

Test rework #4: Ector

Test rework #5: Edje

Test rework #6: Eet

This one is big: I had to split the huge eet_suite.c into separate test files
and it needs more review

Test rework #7: Eet_Cxx

Test rework #8: Eeze

eeze_suite.c has also been splitted

Test rework #9: Efreet

this efreet test suite needs more love later

Test rework #10: Eina

mainly minor stuff: whitespaces, order of includes, ... Just don't fear the number
of changed files :-)

Test rework #11: Eina_Cxx

Test rework #12: Eio

Test rework #13: ElDbus

Test rework #14: ElDbus_Cxx

Test rework #15: Elua

Test rework #16: Emile

Test rework #17: Eo

I've only touched the suite/ subdir. Maybe we should merege the others into
the test suite in suite/

Test rework #18: Eolian

Test rework #19: Eolian_Cxx

Test rework #20: Evas

Test rework #21: Evil

Test Plan: make check

Reviewers: cedric, jpeg, tasn

Differential Revision: https://phab.enlightenment.org/D3654
2016-02-16 12:41:06 +00:00
Vincent Torri 71f0fb98f0 Test rework #20: Evas 2016-02-16 12:41:06 +00:00
Vincent Torri ee8ff34d7b Test rework #19: Eolian_Cxx 2016-02-16 12:41:06 +00:00
Vincent Torri 6e6a0b59ed Test rework #18: Eolian 2016-02-16 12:41:06 +00:00
Vincent Torri d525034ec8 Test rework #17: Eo
I've only touched the suite/ subdir. Maybe we should merege the others into
the test suite in suite/
2016-02-16 12:41:06 +00:00
Vincent Torri 41e626c190 Test rework #16: Emile 2016-02-16 12:41:06 +00:00
Vincent Torri 9dcad9fd9e Test rework #15: Elua 2016-02-16 12:41:06 +00:00
Vincent Torri 7555493b90 Test rework #14: ElDbus_Cxx 2016-02-16 12:41:06 +00:00
Vincent Torri 21746ce8dc Test rework #13: ElDbus 2016-02-16 12:41:06 +00:00
Vincent Torri e15c61beb3 Test rework #12: Eio 2016-02-16 12:41:06 +00:00
Vincent Torri dce4a966ad Test rework #11: Eina_Cxx 2016-02-16 12:41:06 +00:00
Vincent Torri 1b143f233e Test rework #10: Eina
mainly minor stuff: whitespaces, order of includes, ... Just don't fear the number
of changed files :-)
2016-02-16 12:41:06 +00:00
Vincent Torri 4498210eb4 Test rework #9: Efreet
this efreet test suite needs more love later
2016-02-16 12:41:06 +00:00
Vincent Torri 92ff735c11 Test rework #7: Eeze
eeze_suite.c has also been splitted
2016-02-16 12:41:06 +00:00
Vincent Torri 0b84e7593f Test rework #6: Eet_Cxx 2016-02-16 12:41:06 +00:00
Vincent Torri 8cc995cca8 Test rework #6: Eet
This one is big: I had to split the huge eet_suite.c into separate test files
and it needs more review
2016-02-16 12:41:06 +00:00
Vincent Torri 885a1d2f7d Test rework #5: Edje 2016-02-16 12:41:06 +00:00
Vincent Torri 401eba1b53 Test rework #4: Ector 2016-02-16 12:41:06 +00:00
Vincent Torri 563f616b7c Test rework #3: Ecore_Cxx 2016-02-16 12:41:06 +00:00
Vincent Torri b772a46437 Test rework #2: Ecore_Con 2016-02-16 12:41:06 +00:00
Vincent Torri da98142de6 Test rework #1: Ecore
Factorisation of the infra
make uniform all the tests
2016-02-16 12:41:06 +00:00
se.osadchy acd0af9ec6 eina: add tests cases for eina_vector3.
Summary: Add tests for functions of vector3 in eina.

Reviewers: cedric, Hermet

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-12 21:25:55 +01:00
Tom Hacohen bcbf5df8b3 Evas textblock: Disable hyphenation tests when hyphenation is disabled. 2016-02-12 12:21:06 +00:00
Mike Blumenkrantz 2c72709d65 eina: add test covering tiler rect add/del/add of same geometry regions
ref ec2ec3e9d13f64b5a4792717204deb59eb9d4caa
2016-02-05 14:35:28 -05:00
Jee-Yong Um a416f73790 edje: add test for omitting "name" keyword in color_classes.color_class block
Summary:
This test checks whether omitting "name" keyword in color_classes.color_class
block in EDC work normally.

Depends on D3598

Test Plan: make check

Reviewers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-05 07:51:34 +01:00
Cedric BAIL d576c4f3e8 eo: tests callback add and del return value. 2016-02-05 06:21:56 +01:00
Tom Hacohen a7b60528b9 Eo tests: Add tests for eo_init()/shutdown() cycles.
We needed to fix the issue and remove a workaround in the test suite
before we could add these tests. Now they are here and they test that
init/shutdown cycles work as expected.
2016-02-04 09:27:15 +00:00
Tom Hacohen 54dcab5fda Eo tests: remove hack to prevent eo_init()/shutdown() cycles.
We can now remove it thanks to the previous commit.
2016-02-04 09:27:15 +00:00
Tom Hacohen 668fd4a6e8 Eo: add support for initialising eo after it has been shut down.
Until now it wasn't allowed/possible to init (eo_init) eo after it has
been shut down (eo_shutdown). This commit fixes that, so now that is
fully legal to have as many init/shutdown cycles as you want.

There was a previous workaround for this issue:
e47edc250d.

This should allow more flexibility when using the EFL in loadable
modules and in various other scenarios.

The problem is that the class_get() functions cache the previously
created class for efficiency, but the class is freed if eo is shut down,
so the cached pointer is actually invalid.
The solution to the problem was to maintain a generation count
(incremented every time we shut down eo), and compare that to a locally
saved version in class_get(). If they don't match, recreate the class,
as it has already been freed.

@feature
2016-02-04 09:27:15 +00:00
Cedric BAIL 08212c3c4b eo: fix tests to actually account for callback,add and del signal to be @hot.
This example of code is a perfect demonstration of why we should have make
this events @hot from the beginning. As you can see, we ended up being unable
to detect reliably callback being registered and unregistered. Leading to an
negative accounting of callback being unregistered, making this signal unusable
in any scenario.
2016-02-02 10:45:42 -08:00
Daniel Kolesa c95350016d eolian: add parsing and generation of hot events
Unfreezable events can now be marked @hot.

@feature
2016-02-02 17:55:01 +00:00
Jean-Philippe ANDRE 1385afc387 Evas filters: Change FIXME comment in test case 2016-01-23 18:19:52 +09:00
Jean-Philippe Andre 7336b7ed9f Evas filters: Re-enable transform test case, remove dead code
Now that transform is fixed, this should be reenabled.
2016-01-22 15:54:27 +09:00
Jean-Philippe Andre 9d76a44b78 Eo: Replace deprecated EO_EV_ by EO_BASE_EVENT_ 2016-01-21 13:10:05 +09:00
Jean-Philippe Andre 0402b5fd12 Ecore: Remove all temporary files after running make check 2016-01-19 18:18:29 +09:00
Jean-Philippe Andre d9460afcdc Eina: Add proper test case for eina_mk[ds]temp 2016-01-19 18:18:29 +09:00
Jean-Philippe Andre 7832bab253 Eina: Convert eina_test_file.c to UTF-8
It was encoded as ISO-8859 (Latin-1) before.
Maybe this will break these checks on Windows, but all of EFL APIs take
UTF-8 strings, so it doesn't make sense to have ISO-8859 here.
2016-01-19 18:18:29 +09:00
Oleksandr Shcherbina c36c4e246c eina_test: Add test-case for eina_quaternion_transform
Reviewers: stefan_schmidt, cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3568
2016-01-14 11:51:45 +01:00
Jean Guyomarc'h 4fad2ce0fe ecore_evas/tests: add tests for Ecore_Evas_Cocoa 2016-01-14 11:35:09 +01:00
Jean Guyomarc'h 5aa49cb218 ecore_evas/tests: remove trailing whitespaces
Cosmetic changes only
2016-01-14 11:35:09 +01:00
se.osadchy 5e0c1b7cc6 eina: add all test cases for eina_vector2.
Summary: All tests passes for eina_vector2 functions.

Reviewers: cedric, stefan_schmidt

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3565
2016-01-13 17:30:50 +01:00
Oleksandr Shcherbina f2e9a29a0d eina: Add test-case for eina_normal3_matrix_get
Summary: Test case fail, need apply that D3563

Reviewers: cedric, Hermet, stefan_schmidt

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3564
2016-01-13 14:14:50 +01:00
se.osadchy 9e00bd01a1 eina: add test case for eina_vector2
Summary: Create eina_test_vector and add first test case.

Reviewers: cedric, stefan_schmidt

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3560
2016-01-13 13:46:49 +01:00
Felipe Magno de Almeida 88cce73f90 eina-cxx: Remove Eo classes defined manually
Use Eolian to generate the Eo classes for the tests. This should fix T2940.

@fix
2016-01-11 16:10:55 -02:00
Srivardhan Hebbar 26ffe0d55c eina: add test case for eina_strbuf_manage_read_only_new_length API.
Summary: Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: jpeg, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-01-09 00:33:51 +01:00
Cedric BAIL bb921aff04 emile: move all eina_str_base64 to emile_base64. 2016-01-07 16:27:57 -08:00
Srivardhan Hebbar b598f8eb73 eina: Updated testcases of strbuf_substr_get.
Summary:
Fixes T2949.

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

Reviewers: cedric, jpeg

Reviewed By: jpeg

Maniphest Tasks: T2949

Differential Revision: https://phab.enlightenment.org/D3460
2016-01-07 15:35:18 +09:00
Srivardhan Hebbar 39dcf0e55a eina: add test case for eina_base64url_decode API.
Summary:
Depends on D3521

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

Reviewers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-01-04 15:42:59 -08:00
Youngbok Shin 3252e3bf78 Evas Textblock: Fix ellipsis when textblock is resized to formatted h.
Summary:
it->h is sum of max ascent and max descent. It shouldn't be used
when handle ellipsis. Because, Evas Textblock uses these values for
each lines differently according to its location.
(start, end, else, single)
So, for handling ellipsis exactly, it has to be fixed.

Test Plan: A test case is included in Evas Test suite.

Reviewers: woohyun, tasn, herdsman

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3475
2016-01-04 15:12:10 +00:00
Vincent Torri 47ed848a87 Evil: integrate the dlfcn code into Evil
This will remove some incompatibilities with other packages,
especially for win-builds
2015-12-29 22:13:58 +09:00
Jean-Philippe Andre 60e6030f36 Evas 3d: Fix some issues in model test case
Fix some errors, check that file_set and file_save actually work
(rather than have them both fail and pass the test since 0 == 0),
fix temp paths and cleanup unused file.
2015-12-29 16:14:41 +09:00
perepelits.m e6bba4d91c [Evas] Refactor model's savers and loaders.
Summary:
Move common part to a separated document.
Make code more readable using smaller functions. (from Task T2713)

Everything is OK with make check.

Reviewers: cedric, raster, Hermet, stefan_schmidt

Reviewed By: stefan_schmidt

Subscribers: jpeg, artem.popov

Differential Revision: https://phab.enlightenment.org/D3430
2015-12-29 13:28:56 +09:00
Felipe Magno de Almeida a3db1dddd3 efl-js: JavaScript Eolian binding
To configure efl sources with bindings to use in nodejs add ––with-js=nodejs in configure flags to generate node files

$ configure --with-js=nodejs

and compile normally with:

$ make
$ make install

To use, you have to require efl:

efl = require('efl')

The bindings is divided in two parts: generated and manually
written. The generation uses the Eolian library for parsing Eo files
and generate C++ code that is compiled against V8 interpreter library
to create a efl.node file that can be required in a node.js instance.

@feature
2015-12-23 23:59:40 -02:00
Vincent Torri 1921055644 Eina test: fix warning
Reviewers: jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3465
2015-12-18 16:48:34 +09:00
Subodh Kumar 43f50dc7db Evas textblock: Use width of item format to position cursor.
Summary:
Use width of item format to position cursor.

Sometimes it becomes very difficult to
position cursor over item and selection
becomes very difficult as we position the
cursor once the input X coord reached end of the item,
like one attached in the test plan. So this patch
decides over 50% of item width for X coord reaches
to position it at start or end.

@ix

Test Plan:
Attached setup shows how difficult to position cursor at the end when clicked
over item and selection is also very difficult. Consider such case in mobile
device, its becomes impossible to position cursor at the end and selection is
too much difficult.

{F27036}

Also added test cases in evas test suite

Reviewers: herdsman, tasn

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3390
2015-12-17 12:00:23 +00:00
Srivardhan Hebbar 9f99213723 eina: Added testcase for base64url encoding API.
Summary:
Depends on D414

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

Reviewers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D3432
2015-12-16 16:11:28 +09:00
Jee-Yong Um 395ed14f63 edje: add size_class test case
Summary: add edje size_class APIs' test case

Reviewers: jpeg

Reviewed By: jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3391
2015-12-16 14:56:39 +09:00
Jean-Philippe Andre ddd783ec88 Evas filters: Temporarily disable failing tests
Apparently a special font makes the vflip tests crash. vflip
definitely needs to be fixed.

I'm currently working on the filters, so I'll get back to these.
This is a temporary patch.
2015-12-14 20:29:37 +09:00
Vincent Torri 242278669f Eolian test: use eina_environment_tmp_get() instead of deprecated code 2015-12-14 11:14:48 +09:00
Vincent Torri 6b368eb127 Eina test: declare clock_gettime() by including time.h, like it should be 2015-12-14 11:14:46 +09:00
Vincent Torri 70b805be46 Eina test strbuf: the macro TEXT already exists on Windows so rename it to TEST_TEXT 2015-12-14 11:14:34 +09:00
Vincent Torri 2b20e3e21b Evas example: fix warning
Summary:

Test Plan:

Reviewers: cedric

Subscribers:
2015-12-14 11:14:28 +09:00
Youngbok Shin fcba96384f Evas Textblock: Fix NULL dereferencing issue
Summary:
Even if the given two cursor is NULL, it shouldn't be crashed.
@fix

Test Plan:
Test case included in Evas test suite.
Run "make check".

Reviewers: herdsman, tasn

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3422
2015-12-13 17:15:10 +02:00
Guilherme Lepsch 10fa1b5b4b eldbus: add efl.model implementation.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-10 12:02:30 -08:00
Felipe Magno de Almeida 5d4038d74d eina: add EINA_VALUE_TYPE_OPTIONAL, a single-element container that can be empty.
Eina Value Optional can be used to create a eina value that can be set
or be empty and can be embedded in a eina_value_struct.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-10 11:10:46 -08:00
Daniel Hirt 58bfa4b328 Evas textblock: add missing test fonts
evas_suite was failing for people that didn't have malayalam fonts
installed in their system. Obviously, we should provide it in the test
suite.

Added malayalam font (from http://www.indlinux.org/) to the
TestFont.eet, along with the license README.

Fixes T2908.

@fix
2015-12-10 09:57:39 +02:00
Srivardhan Hebbar 4103f38eed eina: Adding test case for base64 decode function.
Summary:
Depends on D3381

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

Reviewers: cedric, jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3382
2015-12-10 16:50:11 +09:00
Youngbok Shin 20ef85e307 Evas text: Fix Evas Text truncated text case.
Summary:
Evas Text only concerns about a advance of each text item.
When a width of last character is bigger than its advance, the last character can be truncated.
And the different line size calculation caused different aligning between Evas Text and Evas Textblock.
So, the width of last character will be considered in Evas Text just like Evas Textblock.
@fix

Test Plan:
The following text shows how the size calculation is different between Evas Textblock and Text.
Get native size from Evas Textblock and get width(geometry) of Evas Text.
You can see the width of Evas Text is bigger than native size of Evas Textblock.
(adv > width)
こんにちは。

The following text will be truncated without this patch.
(adv < width)
ନୂଁ

Reviewers: woohyun, tasn, herdsman

Subscribers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D3004
2015-12-09 11:10:46 +02:00
Daniel Hirt 7e8e392db6 Evas textblock: improve and fix line range rectangles
The line range rectangles geometries needed a bit of adjusting. I
started out with fixing T2648. In order to fill the gap between the end
of the line and the margins, the geometry of the last line's character
was used. I am not really sure why. Anyway, we have the line geometry,
so I replaced it with that.

Then, it led me to do some alignment checks, and indeed alignment cases
were not treated. For instance, an LTR paragraph could have a line
aligned with a value greater than 0.0. That means that we should fill
the gap from the left of the line, if it was the last line in a
multi-line selection. The inverse case is for RTL.

I think it now works as it should. Will see if the selection logic is
missing some more stuff once I come up with more example cases.

Fixes T2648.

@fix
2015-12-08 17:19:18 +02:00
Tom Hacohen 51d8e58832 Evas test matrix: Silence warning.
This happens because this test doesn't really depend on anything evas,
so it doesn't set evas up. We want to be warned when tests forget to set
evas up, just not in this case.
2015-12-08 11:15:25 +00:00
se.osadchy 82504d9d77 evas: recognize duplicated data structure with eina_quternion and ector.
Summary:
Move data structure and functionality to eina_quaternion from evas_vec4.

Reviewers: raster, Hermet, cedric

Subscribers: jpeg, Oleksander

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-07 16:36:16 -08:00
Daniel Hirt 1d48dd90b2 Evas textblock: fix evas_textblock_cursor_line_set
The line_set function should set the cursor to the first logical
position in the line. We can't use the first text position of the
first item in the line, due to BiDi considerations (the line may be
reordered). I've split evas_textblock_cursor_line_char_first to avoid
code duplication, as it already handles these cases.

@fix
2015-12-07 18:21:00 +02:00
Srivardhan Hebbar 05cfb0604c eina: Updated test case to test more scenario.
Summary:
The test cases which I took from wikipedia didn't have the characters
'/' and '+' in the encoded string. So added test case testing these.

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

Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3405
2015-12-07 19:29:36 +09:00
Vincent Torri 0497b9685c efl: add binary mode to open() calls
This allows better compatibility with Windows

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-05 21:06:04 +01:00
Vincent Torri 4f242fb48a efl: add binary mode to fdopen() calls
This allows better compatibility with Windows

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-05 21:05:23 +01:00
Vincent Torri 3b44645363 efl: add binary mode to f(re)open() calls
This allows better compatibility with Windows

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-05 21:04:36 +01:00
Vivek Ellur b41e66c1ef Eio: Fixes T2831, eio xattr tests failing
Summary:
@Fix
The eio_file_xattr test was failing in jenkins, so added a new callback
and moved the check condition to callback. The condition is checked
only when it is successfully executed

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

Reviewers: cedric, stefan_schmidt

Subscribers: jpeg, cedric

Maniphest Tasks: T2831

Differential Revision: https://phab.enlightenment.org/D3400
2015-12-03 09:56:11 +01:00
se.osadchy ce4146ec63 evas: fix bug with logic with eina_matrix in evas_3d_utils
Summary: Also need to fix logically dead code in coverity.

Reviewers: raster, Hermet, cedric

Subscribers: jpeg

Maniphest Tasks: T2832

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-02 14:15:01 -08:00
Cedric BAIL 11ac6b145d evas: fix double free.
The ownership of this list and its content belong to the iterator. This code
was actively double freeing and our test suite doesn't crash or have any issue...
Well actually it was complaining that the list had error, but due to our other
false positive test that do trigger eina log, we continuously ignored this error.

NOTE: The fact that the test rely also on the container of the iterator instead
of the iterator itself is not that great to. I kind of feel bad now for having
allowed access to the container. We should have been able to allow changing the
logic to generate those rectangle step after step instead of in one go. Now this
seems difficult.
2015-12-02 12:30:34 -08:00
Daniel Hirt 59e9e2ddc8 Evas textblock: fix height on line wrapping
Line advance should finalize the line with its last item, and not the
item we're currently wrapping. This fixes T1583, where some line
wrapping cases would look different than their equivalent <ps>
versions.

@fix
2015-12-02 15:06:32 +02:00
Youngbok Shin 809d8fdafe Evas Textblock: Fix text disappear issue when text is made up with multiple items.
Summary:
Text is disappearing when we resize a singleline Evas Textblock with ellipsis.
It is happened by putting a Text item at logical_items list without considering about logical position.
It is only happended the text is made up with multiple items.
@fix

Test Plan:
1. Run elementary_test
2. Click Label Ellipsis
3. Resize the window dynamically and see the result.

Reviewers: woohyun, tasn, herdsman

Subscribers: jpeg, subodh6129, shilpasingh, cedric

Maniphest Tasks: T2709

Differential Revision: https://phab.enlightenment.org/D3022
2015-12-02 09:52:01 +02:00
Jee-Yong Um 20671d84cd edje: add mising closing brace and adjust indents and spacing in test edc
Summary: A closing brace is missing, and indent is not aligned.

Reviewers: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 14:54:18 -08:00
Subhransu Mohanty 8212f2aee3 eina: add new api eina_bezier_on_interval()
I couldn't come up with a better name, if anyone has a suggestion.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-30 15:40:01 -08:00
Daniel Hirt a7b0b13c43 Evas textblock: add hyphenation tests 2015-11-24 14:31:29 +02:00
Daniel Hirt 89ef4b70b8 Eina unicode: add eina_unicode_unicode_to_utf8_range
Required some special treatment to get words (substring) out of an
input Unicode string to a utf8 one. This saves the trouble converting
the whole string: you input an offset in the Eina_Unicode array, and
provide the required length. That's is, now you can extract words and
whatnot in utf8 form.

To save code I wrapped the original one to get the whole length.
2015-11-24 14:22:57 +02:00
Cedric BAIL 6dcd22711f eina: simplify tests logic for base64. 2015-11-23 11:57:28 -08:00
Yeshwanth Reddivari b3a917563c Eina Example: Fix memory leak of variable buf
Summary: Fix memory leak of buf in eina_test_simple_xml_parser.c as reported by static analysis tool, Cppcheck.

Reviewers: singh.amitesh, Hermet, jpeg

Reviewed By: jpeg

Subscribers: alok25, mvsovani, sachin.dev, cedric

Differential Revision: https://phab.enlightenment.org/D3371
2015-11-23 21:04:15 +09:00
Srivardhan Hebbar 11a4db1261 eina: test case for base64 encoding function.
Summary: Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-22 23:28:09 +01:00
Subhransu Mohanty 07bb5483b4 eina: added bounds_get api to Eina_Bezier
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-22 23:28:09 +01:00
Youngbok Shin a9b4be11e1 Evas object: Add paragraph_direciton APIs
Summary:
It adds evas_object_paragraph_direction_set, get APIs.
The APIs set or get paragraph direction to/from the given object.
It changes BiDi calculations and affect the direction and aligning of text.
It doesn't have any effect to text without Fribidi library.

The default paragraph direction is EVAS_BIDI_DIRECTION_INHERIT.
If dir is EVAS_BIDI_DIRECTION_INHERIT, paragraph direction is changed
according to smart parent object. If there is no smart parent object,
paragraph direction works as EVAS_BIDI_DIRECTION_NEUTRAL.

@feature

Test Plan:
Test cases included to the following files.
- evas_test_textblock.c
- evas_test_text.c
- evas_test_object_smart.c

Run "make check".

Reviewers: woohyun, raster, herdsman, tasn

Subscribers: c, raster, cedric

Differential Revision: https://phab.enlightenment.org/D1690
2015-11-19 11:43:39 +00:00
Daniel Kolesa e089908545 eolian: add eolian_type_aliased_base_get
This adds a new API function that is there mainly for convenience (see doc).
Also added/updated tests as necessary.

@feature
2015-11-18 16:02:15 +00:00
Daniel Hirt d6e0d902cf Evas textblock: fix bad deletion in test case
No need to delete this object. It is already being deleted when the
textblock is freed at the end of the test.
2015-11-17 16:22:02 +02:00
Minwoo, Lee c196422e63 evas textblock: fixed ascent/descent calculation
Summary:
If textblock has linegap and multi language, ascent/descent calculation is
incorrect.
In _layout_format_ascent_descent_adjust(), descent is accumulated.
(for example, for a line gap of 50, the first line gap is more than 100)

Test Plan:
Textblock has "linegap=50" and multi language (ex.
        "This is a test suite for line gap -
        ഈ ലൈൻ വിടവ് ടെസ്റ്റ് ടെസ്റ്റ് ടെസ്റ്റ് ടെസ്റ്റ് ഒരു പരീക്ഷണ വെയര് ")
Added test suite in evas_test_textblock.c file.

Reviewers: tasn

Subscribers: subodh6129, cedric

Differential Revision: https://phab.enlightenment.org/D3311
2015-11-13 12:27:59 +00:00
Daniel Kolesa b5042ff669 eo generator: better output whitespace handling with pointers 2015-11-11 15:15:08 +00:00
Srivardhan Hebbar 252e703e2a eina: add test case for eina_strbuf_substr_get.
Summary:
Depends on D3224

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

Reviewers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-10 15:01:17 -08:00
Vivek Ellur 46777274fe eina: add test case for binbuf append function
Summary:
Added test case for eina_binbuf_append_buffer function

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-10 14:44:17 -08:00
Daniel Kolesa f6de200c46 eolian generator: fix test reference files 2015-11-10 16:08:03 +00:00
Vivek Ellur 873562608e eina: add test case for file statat function.
Summary:
Added test case for eina_file_statat function

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

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 16:26:23 -08:00
Vivek Ellur 7fa841236b eina: add test case for eina list search function.
Summary:
Added test case for eina_list_search_sorted function

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 16:22:24 -08:00
Srivardhan Hebbar c99d50e00b ecore_con: adding test case for ecore_con_url_status_code_get.
Summary: Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 16:21:44 -08:00
Vivek Ellur 4f6e158c13 eina: add test case for list data idx function.
Summary:
Added test case for eina_list_data_idx function

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

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3287
2015-11-09 16:20:23 -08:00
Vivek Ellur 6bf43179cd eina: add test cases for eina list move functions
Summary:
Added test cases for eina_list_move and eina_list_move_list functions

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 16:19:02 -08:00
Vivek Ellur fec6bd3fef eina: add test case for list demote function
Summary:
Added test case for eina_list_demote_list function

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 16:18:07 -08:00
Vivek Ellur f06eedf3c3 eina: add test case for eina list reverse iterator
Summary:
Added test case for eina_list_iterator_reversed_new function

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 16:17:26 -08:00
Vivek Ellur b5e672aad8 eina: added test case for matrix4 transpose function
Summary:
Added test case for eina_matrix4_transpose function

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 16:16:07 -08:00
Srivardhan Hebbar 0cf357c029 eet: add check for realloc fail.
Summary:
Thought, if realloc fails, its better to fail the test case than
continue.

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

Reviewers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 16:10:17 -08:00
se.osadchy 3d77f55f91 evas: refactor duplicated data structure with eina_matrix.
Summary: Move data structure and functionality to eina_matrix from evas_mat.

Reviewers: raster, Hermet, cedric

Subscribers: Oleksander, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 15:27:26 -08:00
Shilpa Singh 0c1bb7d7b3 eina: add API eina_strftime
Summary:
Add new API eina_strftime API in eina_str

@feature

Test Plan: test case and example also updated

Reviewers: tasn, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 12:42:50 -08:00
Shilpa Singh 297ea39a5c eina: add eina_tmpstr_manage_new, eina_tmpstr_manage_new_length APIs
Summary:
Add eina_tmpstr_manage_new, eina_tmpstr_manage_new_length APIs, these APIs create new tmpstr but reuse the input string memory.

@feature

Test Plan: Test case and example updated

Reviewers: tasn, cedric

Reviewed By: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 10:42:35 -08:00
Cedric BAIL e45b801577 eina: fix computation of sqrt near 1.
This is still not so good below 1.

@fix
2015-11-09 10:42:35 -08:00
Srivardhan Hebbar 01eaa7a9cc eina: add test case for eina_strbuf_tolower API.
Summary:
Depends on D3200
Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 10:42:35 -08:00
Daniel Kolesa a29d6aed66 eolian generator: remove useless --eo argument 2015-11-09 15:02:32 +00:00
Tom Hacohen f28f6ecbfa Eo: Move op resolve check to where it belongs (out of hot path).
It was put in the wrong place. It should abort early if it detects we
can't resolve, and shouldn't check it if we already know it's OK.
2015-11-09 11:43:04 +00:00
Stefan Schmidt c74e03fda4 tests/ecore_con: check saved env variables before setting them again.
We see segfaults on Jenkins with these two test cases. Better check
before setting them as we had similar problems before on this setup
as XDG_RUNTIME_DIR might never be set.
2015-11-03 12:50:50 +01:00
Cedric BAIL ae5e2c8284 emile/ecore_con: drop SSLv3 support due to security issue.
SSLv3 has been compromised a year ago by what is known as POODLE
(https://en.wikipedia.org/wiki/POODLE). Every major browser have now
dropped support for SSLv3 and distribution are starting to do so also.
It is a good timing for us to do so, especially as it breaks build on
some distribution.
2015-11-02 14:22:42 -08:00
Jean-Philippe Andre 0a5b28eba8 tests: Fix build warning 2015-11-02 15:08:05 +09:00
Vivek Ellur 081e9894d4 ecore: add test case for idler enterer function
Summary:
Added test case for ecore_idle_enterer_before_add function

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-10-31 02:37:20 +01:00
Vivek Ellur 85f8daac6d eina_hash: add test cases for eina_hash_add/del by hash functions
Summary:
Added test cases for eina_hash_add_by_hash/del_by_hash functions

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-10-31 02:12:06 +01:00
Vivek Ellur dc391da424 eina_quaternion: add test case for rotation function
Summary:
Added test case for eina_quaternion_rotate function

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-10-31 02:12:06 +01:00
Vivek Ellur 6090073dee eina_quaternion: add test cases for quaternion rotation functions
Summary:
Added test cases for eina_quaternion_f16p16_rotate and
eina_quaternion_f16p16_rotation_matrix3_get functions

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-10-31 02:12:06 +01:00
Vivek Ellur ccd7c2b014 eina_quaternion: add test cases for interpolation functions.
Summary:
Added test cases for quaternion_lerp, quaternion_slerp and quaternion_nlerp
functions

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-10-22 12:24:08 -07:00
Vivek Ellur ac3358b618 eina: add test cases for f16p16 quaternion interpolation functions
Summary:
Added test cases  for f16p16 lerp, slerp and nlerp functions

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

Reviewers: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-10-22 12:17:20 -07:00
Carsten Haitzler b1600b2daa efl tests - ecore fb - disable as it basically is more pain than gain
this means make check is more useful to people.
2015-10-22 19:19:50 +09:00
Vitor Sousa d6055e9527 eolian: Test recognition of struct types used in methods
Summary:
Add code to unit test to check if Eolian correctly recognize a struct
name as a struct type when it is used in a method.

Add new method to struct.eo to create this test.
Update struct_ref.c accordingly.

Reviewers: tasn, q66

Differential Revision: https://phab.enlightenment.org/D3213
2015-10-21 18:15:55 +01:00
Jean-Philippe Andre 83b91dfd09 Evas GL: Try to fix automated tests
I forgot the #ifdef in the shaders. This might be it. @stefan,
try again please.
2015-10-19 19:36:22 +09:00
Tom Hacohen 8e2e7bd61e Eo events: Add a struct member marking if it's a legacy event or not.
My previous patch to this piece of code
(37f84b7e96), caused a significant
performance regression. This is such a hot path, that even accessing the
strings when we don't have to slows things down drastically. It makes
more sense to just store it in the structure.

This commit breaks ABI (though most people probably won't even need to
recompile anything else because of the memory layout).
It was discussed on IRC and was decided this is a big enough issue to
warrant a fix during the freeze.

@fix
2015-10-16 11:55:07 +01:00
Vincent Torri 11846b406b Tests: use eina_environment_tmp_get() 2015-10-15 09:34:33 +01:00
Jean-Philippe Andre 7b401f34da Evas GL: Add more tests
- glReadPixels
- FBO test
- PBuffer test (only GL engine)
- surface formats test (up to depth=24, stencil=8)
2015-10-15 16:20:53 +09:00
Jean-Philippe Andre f6fd05ff74 Evas GL: Add test case for surfaceless contexts 2015-10-15 16:20:53 +09:00
Jean-Philippe Andre 93298d6dc2 Evas GL: Add a test case for Evas GL (make check)
For now this only covers SOME of Evas GL's functions.

It will try to run with opengl_x11 and buffer (OSMesa). It'll also
try to fail silently if the engine initialization failed, or if
OSMesa could not be found. If the engines work, then Evas GL must
work properly.
2015-10-14 20:14:51 +09:00
Cedric BAIL ec909b4d6a ecore_con: be more defensive while using environment variable provided by the system.
This fix a crash during make check for system where one of those string where not defined.
2015-10-12 14:01:23 -07:00
Vivek Ellur 2136ad5ecb eina_tiler: add test cases for eina tiler area set/get functions
Summary:
Added test cases for eina_tiler_area_size_set and get functions

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

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-10-12 14:01:23 -07:00
Vivek Ellur 4f604e4d1e eina_queue: add test cases in eina thread queue module
Summary:
Added test cases for eina_thread_queue_parent_get and eina_thread_queue_fd_get
functions

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

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-10-12 14:01:23 -07:00
Tom Hacohen c4cbdca127 Eio model test: initialise pointer (clang warning).
This is probably not an issue because the function should always
return a value, but initialising this variable silence clang's
warning and is not harmful anyway.
2015-10-09 12:23:43 +01:00
Tom Hacohen fd61ff69b3 Eo: Fix Eo on Windows.
We use function names instead of function pointers of Windows, because
of dll import/export issues (more in a comment in eo.c). Before this
commit we were comparing the pointers to the strings instead of the
content in some of the places, which caused op desc lookup not to work.
This fixes that.

Thanks to vtorri for his assistance.

@fix
2015-10-09 12:18:30 +01:00
Tom Hacohen 64a04eb770 Edje test: remove unused variable. 2015-10-04 15:01:27 +01:00
Jean-Philippe Andre 73f9ca6297 Edje tests: Test inheritance of flag no_render 2015-10-02 12:25:29 +09:00
Jean-Philippe Andre 35fe059ec8 Edje: Add test case for SNAPSHOT
This is mostly an edje_cc compilation test.
2015-10-01 20:10:54 +09:00
Jean-Philippe Andre 6b7e4087d2 Edje tests: Add PROXY part to the filters test case
Only compilation is tested here.
Use edje_player to check the resulting edj if you wanna see what
happens.
2015-10-01 20:10:54 +09:00
Tom Hacohen ab6d7b44df Eo: add a regression test for broken callback comparison.
This bug was fixed in d889da6b12, but it was too
late at night to start hacking on extracting a regression test and adding it to
the suite, so adding it now.

This test makes sure that we only fallback to string comparison with legacy
events.
2015-09-29 09:17:48 +01:00
Tom Hacohen d889da6b12 Eo legacy events: Fix broken callback comparison
Commit 37f84b7e96 introduced a few changes
to the callback matching mechanism that made it so sometimes callbacks
would be triggered for the wrong events. The problem was there because
of the support for legacy events that forces to do string comparison
instead of the usual pointer comparison. We should only do string
comparison when we are certain one of the callbacks is a legacy
generated one.

Regression tests will follow tomorrow. Way too late here for that.

Thanks to cedric for reporting.
2015-09-29 01:01:05 +01:00
Tom Hacohen e2344b9b9e Eo: reduce memory usage across applications.
As described by Carsten in his email to edev ML titled:
"[E-devel] eo stability - i think we need to postpone that"
with the switch to Eo2 we significantly increased our usage of RW memory
pages, and thus significantly increased our memory usage when running
multiple applications.

The problem was that during the migration to Eo2 the op id cache and the
op description arrays were merged, causing the op description arrays to
no longer be RO. This patch enables users of Eo (mainly Eolian) to
declare those arrays as const (RO) again, saving that memory.

There might be performance implications with this patch. I had to remove
the op desc array sorting, and I used a hash table for the lookup. I
think the op desc sorting doesn't really affect performance because that
array is seldom accessed and is usually pretty short. The hash table
is not a problem either, because it's  behind the scenes, so it can be
changed to a more efficient data structure if the hash table is not good
enough. The hash table itself is also rarely accessed, so it's mostly
about memory.

Please keep an eye for any bugs, performance or excessive memory usage.
I believe this should be better on all fronts.

This commit *BREAKS ABI*.

@fix
2015-09-28 18:39:15 +01:00
Daniel Kolesa 17f4c45fc9 eolian tests: strip trailing newlines for ref file compare 2015-09-28 18:50:07 +01:00
Daniel Kolesa 76bc86716e Eolian generator: remove sentinel generation 2015-09-28 16:18:29 +01:00