path: root/src/tests/ecore/ecore_test_promise.c (follow)
AgeCommit message (Collapse)Author
2017-02-02ecore: implement new requirement in the test suite.Cedric BAIL
2016-12-16ecore: add test for efl_promise_connect.Cedric BAIL
2016-12-16ecore: add tests for new promise delayed behavior.Cedric BAIL
2016-12-16ecore: fix test to generate one main loop iteration to see promise fulfilled.Cedric BAIL
2016-11-07ecore: remove Eina_Promise tests.Cedric BAIL
2016-11-07ecore: remove tests for ecore_thread_promise_run.Cedric BAIL
2016-11-04tests: ecore_promise: removed unused variableStefan Schmidt
Looks like a copy and paste bug form the other tests.
2016-11-03ecore: cleanup testCedric BAIL
2016-11-03ecore: add check to make sure that the order of future_get and value_set can ↵Cedric BAIL
be switched.
2016-11-03ecore: add test for efl_future_then after value_setVitor Sousa
2016-10-19ecore: test recursive case on efl_future.Cedric BAIL
2016-09-15ecore: make sure that progress type have the proper const.Cedric Bail
2016-09-08efl: add documentation and last cleanup of the API.Cedric BAIL
2016-09-08ecore: test efl_future_link.Cedric Bail
2016-09-08ecore: add test for efl_future_race.Cedric Bail
2016-09-08ecore: add tests for efl_future_all.Cedric Bail
2016-09-08ecore: add tests for Efl.Promise.Cedric Bail
2016-08-18eina_error: allow errno.h codes.Gustavo Sverzut Barbieri
we have some duplication of errors between Eina_Error and errno.h, however we should use Eina_Error to extend the traditional errno.h system. then change eina_error_msg_register() and eina_error_msg_static_register() to return a magic bit to state the number was registered, and on other functions test this bit in order to operate on registered values, otherwise fallback to errno.h, such as strerror(). It also deprecates 2 clear duplicated errors: - EINA_ERROR_OUT_OF_MEMORY -> ENOMEM - EINA_ERROR_TIMEOUT -> ETIMEDOUT There are two details when using strerror(): - old behavior did not return strings for non-error, such as "Success" or "Unknown error ${N}" - thread-safety issues: since we must be thread safe, then use strerror_r() and eina_stringshare_add() that value, keeping a hash of cached values
2016-06-09eina: Remove value type promisesLauro Moura
All values in promises are now considered as by-pointer.
2016-06-06eina: Avoid promise early deletion when cancelled.Lauro Moura
Cancelling a promise will fulfill it but won't actually free the memory. This memory is under custody of the owner, who must either call value_set or error_set to finish it.
2016-06-05ecore: Fix ecore thread promisesLauro Moura
Make sure we free the promise memory, set MAGIC numbers and avoid leaking the underlying eina promise
2016-06-03eina: Remove Eina_Promise* parameter in promise callbackFelipe Magno de Almeida
Remove not very useful parameter to eina_promise_then callbacks.
2016-06-03eina: Remove unnecessary indirection to promisesFelipe Magno de Almeida
Now when dealing with pointer types, we will not get pointer to pointer semantics in callbacks and eina_promise_owner_value_set for Eina_Promise. It will work as expected: Eina_Promise_Owner* promise = eina_promise_add(); void* p = malloc(sizeof(T)); eina_promise_owner_value_set(promise, p, &free);
2016-05-26eina: Make cancelled promises use EINA_ERROR_PROMISE_CANCELLED error codeFelipe Magno de Almeida
2016-05-25eina: Add promise parameter to then calllbacksFelipe Magno de Almeida
Added promise parameter to then callbacks so callbacks can steal ownership of the value from the promise.
2016-05-07eina: Fix memory leaks in promiseFelipe Magno de Almeida
2016-05-02ecore: fix promise test wrong use of EINA_UNUSED.Cedric Bail
2016-04-05ecore: add tests for promises with ecore_thread_promise_runFelipe Magno de Almeida
Signed-off-by: Cedric Bail <>
2016-03-08Revert "ecore: Create Promises"Tom Hacohen
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 f9ba80ab33e0b94dad7ec103e6d261a644f7835f.
2016-03-06ecore: Create PromisesFelipe Magno de Almeida
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.