forked from enlightenment/efl
tests: split efl_app promise tests into separate test cases
Summary: each test case can run in parallel, so this provides a ~300% speedup ref T6850 Depends on D5904 Reviewers: stefan_schmidt Subscribers: cedric Maniphest Tasks: T6850 Differential Revision: https://phab.enlightenment.org/D5905
This commit is contained in:
parent
43c420d3d0
commit
99f3f89f24
|
@ -51,6 +51,9 @@ static const Efl_Test_Case etc[] = {
|
|||
{ "Loop_Timer", efl_app_test_efl_loop_timer },
|
||||
{ "Loop_FD", efl_app_test_efl_loop_fd },
|
||||
{ "Promise", efl_app_test_promise },
|
||||
{ "Promise", efl_app_test_promise_2 },
|
||||
{ "Promise", efl_app_test_promise_3 },
|
||||
{ "Promise", efl_app_test_promise_safety },
|
||||
{ NULL, NULL }
|
||||
};
|
||||
|
||||
|
|
|
@ -8,5 +8,8 @@ void efl_app_test_efl_loop(TCase *tc);
|
|||
void efl_app_test_efl_loop_fd(TCase *tc);
|
||||
void efl_app_test_efl_loop_timer(TCase *tc);
|
||||
void efl_app_test_promise(TCase *tc);
|
||||
void efl_app_test_promise_2(TCase *tc);
|
||||
void efl_app_test_promise_3(TCase *tc);
|
||||
void efl_app_test_promise_safety(TCase *tc);
|
||||
|
||||
#endif /* _EFL_APP_SUITE_H */
|
||||
|
|
|
@ -694,7 +694,7 @@ EFL_START_TEST(efl_test_promise_future_implicit_cancel)
|
|||
The promise was resolved, but the mainloop is not running.
|
||||
Since ecore_shutdown() will be called all the futures must be cancelled
|
||||
*/
|
||||
ecore_shutdown();
|
||||
ck_assert_int_eq(ecore_shutdown(), 0);
|
||||
//All the futures were cancelled at this point
|
||||
fail_if(cancel_count != CHAIN_SIZE);
|
||||
//Cancel should not be called, since we called eina_promise_resolve()
|
||||
|
@ -1334,28 +1334,42 @@ promise_shutdown(void)
|
|||
void efl_app_test_promise(TCase *tc)
|
||||
{
|
||||
tcase_add_checked_fixture(tc, promise_init, promise_shutdown);
|
||||
tcase_add_test(tc, efl_test_timeout);
|
||||
tcase_add_test(tc, efl_test_job);
|
||||
tcase_add_test(tc, efl_test_idle);
|
||||
tcase_add_test(tc, efl_test_promise_future_convert);
|
||||
tcase_add_test(tc, efl_test_promise_future_easy);
|
||||
tcase_add_test(tc, efl_test_promise_future_all);
|
||||
tcase_add_test(tc, efl_test_promise_future_race);
|
||||
tcase_add_test(tc, efl_test_promise_future_ignore_error);
|
||||
tcase_add_test(tc, efl_test_promise_future_success);
|
||||
tcase_add_test(tc, efl_test_promise_future_failure);
|
||||
}
|
||||
|
||||
void efl_app_test_promise_2(TCase *tc)
|
||||
{
|
||||
tcase_add_checked_fixture(tc, promise_init, promise_shutdown);
|
||||
tcase_add_test(tc, efl_test_promise_future_chain_no_error);
|
||||
tcase_add_test(tc, efl_test_promise_future_chain_error);
|
||||
tcase_add_test(tc, efl_test_promise_future_cancel);
|
||||
tcase_add_test(tc, efl_test_promise_future_implicit_cancel);
|
||||
tcase_add_test(tc, efl_test_promise_future_inner_promise);
|
||||
tcase_add_test(tc, efl_test_promise_future_inner_promise_fail);
|
||||
tcase_add_test(tc, efl_test_promise_future_convert);
|
||||
tcase_add_test(tc, efl_test_promise_future_easy);
|
||||
tcase_add_test(tc, efl_test_promise_future_all);
|
||||
tcase_add_test(tc, efl_test_promise_future_race);
|
||||
tcase_add_test(tc, efl_test_promise_future_ignore_error);
|
||||
}
|
||||
|
||||
void efl_app_test_promise_3(TCase *tc)
|
||||
{
|
||||
tcase_add_checked_fixture(tc, promise_init, promise_shutdown);
|
||||
tcase_add_test(tc, efl_test_timeout);
|
||||
tcase_add_test(tc, efl_test_job);
|
||||
tcase_add_test(tc, efl_test_idle);
|
||||
tcase_add_test(tc, efl_test_promise_log);
|
||||
//FIXME: We should move this to EO tests, however they depend on Ecore...
|
||||
tcase_add_test(tc, efl_test_promise_eo);
|
||||
tcase_add_test(tc, efl_test_promise_eo_link);
|
||||
}
|
||||
|
||||
void efl_app_test_promise_safety(TCase *tc)
|
||||
{
|
||||
#ifdef EINA_SAFETY_CHECKS
|
||||
tcase_add_checked_fixture(tc, promise_init, promise_shutdown);
|
||||
tcase_add_test(tc, efl_test_promise_null);
|
||||
tcase_add_test(tc, efl_test_promise_reject_resolve_null);
|
||||
tcase_add_test(tc, efl_test_future_null);
|
||||
|
|
Loading…
Reference in New Issue