diff options
author | Stefan Schmidt <stefan@osg.samsung.com> | 2016-12-06 17:59:53 +0100 |
---|---|---|
committer | Stefan Schmidt <stefan@osg.samsung.com> | 2016-12-09 09:28:58 +0100 |
commit | 8d089e4d4432ce549871f30a8f60092a09111cd8 (patch) | |
tree | 5cee905cc21bf600b8e902a9395c88cbe575305f | |
parent | 8784ba97ad2adea5b3709e35c90da56ad9a6d702 (diff) | |
download | efl-devs/stefan/jenkins-check.tar.gz |
tests: ecore: detect if the timeout test runs on Jenkins and increase allowed offsetdevs/stefan/jenkins-check
From time to time we run into trouble with this test. It goes over the, already
increased, limit on Jenkins. Most likely due to high load on the server. Neither
Cedric nor me have been able to pin this down on local runs and we already had
increased it from the initial 0.01 to 0.02 but just today we hit 0.38.
What we do now is to detect if we run on our jenkins and increase the allowed value
while having the intial lower value back for normal local runs.
-rw-r--r-- | src/tests/ecore/ecore_test_timer.c | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/src/tests/ecore/ecore_test_timer.c b/src/tests/ecore/ecore_test_timer.c index 63cb5332d0..48b707142e 100644 --- a/src/tests/ecore/ecore_test_timer.c +++ b/src/tests/ecore/ecore_test_timer.c @@ -34,6 +34,22 @@ struct _timers // timer struct double precision[3]; }; +static int +_efl_test_jenkins_run(void) +{ + char *jenkins_url = NULL; + + jenkins_url = getenv("JENKINS_URL"); + + if (!jenkins_url) + return 0; + + if (strcmp(jenkins_url, "https://build.enlightenment.org/") == 0) + return 1; + else + return 0; +} + static Eina_Bool _timer1_cb(void *data) { @@ -182,8 +198,14 @@ _ecore_promise_quit(void *data, const Efl_Event *ev) Eina_Bool *bob = data; double *start = success->value; double delta = ecore_loop_time_get() - *start; + double offset = 0.01; - ck_assert_msg(delta - 0.2 <= 0.02, "Ecore promise timeout took %f (should be <= 0.02)\n", delta - 0.2); + if (_efl_test_jenkins_run()) + { + fprintf(stderr, "Jenkins detected\n"); + offset *= 5; + } + ck_assert_msg(delta - 0.2 <= offset, "Ecore promise timeout took %f (should be <= %f)\n", delta - 0.2, offset); *bob = EINA_TRUE; ecore_main_loop_quit(); |