summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Schmidt <stefan@osg.samsung.com>2016-12-06 17:59:53 +0100
committerStefan Schmidt <stefan@osg.samsung.com>2016-12-09 11:09:47 +0100
commitd46829f0f9f938e81e9265ec543cd0ca0522c306 (patch)
treea71a9a8ba26e8541f9023eda1632a1c399da3acb
parent4a5e9421e66f033b9b9f29e470dc4e0b7c5feb20 (diff)
downloadefl-d46829f0f9f938e81e9265ec543cd0ca0522c306.tar.gz
tests: ecore: detect if the timeout test runs on Jenkins and increase allowed offset
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.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/tests/ecore/ecore_test_timer.c b/src/tests/ecore/ecore_test_timer.c
index 63cb5332d0..6efe5a2554 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,12 @@ _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;
+
+ if (_efl_test_jenkins_run())
+ offset *= 5;
- ck_assert_msg(delta - 0.2 <= 0.02, "Ecore promise timeout took %f (should be <= 0.02)\n", delta - 0.2);
+ 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();