summaryrefslogtreecommitdiff
path: root/src/tests/efreet
diff options
context:
space:
mode:
authorLucas De Marchi <lucas.demarchi@profusion.mobi>2013-01-14 21:04:22 +0000
committerLucas De Marchi <lucas.demarchi@profusion.mobi>2013-01-14 21:04:22 +0000
commit2d7e10363d7d209a605329ba692a3e788b37dc68 (patch)
treebb3dacbf2857d97de7aba15b9ab9d7494798b6b4 /src/tests/efreet
parent3d856e9600bccf2610ad9b6f23a5ebb62a1aaf15 (diff)
downloadefl-2d7e10363d7d209a605329ba692a3e788b37dc68.tar.gz
efl/efreet: remove clearenv usage
This improves the tests on freebsd, which doesn't have clearenv() ( though this commit was untested on such environement). clearenv was rejected from POSIX so we better aim to stop its usage. However since tests use setenv() this may lead to leaks, but it's better a leak than a failing test. On Linux all tests that were passing continue to pass. SVN revision: 82779
Diffstat (limited to 'src/tests/efreet')
-rw-r--r--src/tests/efreet/main.c40
1 files changed, 4 insertions, 36 deletions
diff --git a/src/tests/efreet/main.c b/src/tests/efreet/main.c
index 083374402a..8ba4f0a991 100644
--- a/src/tests/efreet/main.c
+++ b/src/tests/efreet/main.c
@@ -72,11 +72,10 @@ static Efreet_Test tests[] = {
#endif
{"Utils", ef_cb_utils},
{"Mime", ef_mime_cb_get},
- {NULL, NULL}
+ { }
};
extern char **environ;
-static Eina_List *environment = NULL;
const char *ef_test_path_get(const char *component)
{
@@ -104,39 +103,12 @@ const char *ef_test_path_get(const char *component)
return buf;
}
-void
-environment_store(void)
-{
- char *env;
- char **e;
-#ifdef HAVE_CLEARENV
- EINA_LIST_FREE(environment, env)
- free(env);
- for (e = environ; *e; e++)
- environment = eina_list_append(environment, strdup(*e));
-#endif
-}
-
-void
-environment_restore(void)
-{
- Eina_List *l;
- char *e;
- if (!environment) return;
-#ifdef HAVE_CLEARENV
- clearenv();
- EINA_LIST_FOREACH(environment, l, e)
- putenv(e);
-#endif
-}
-
int
main(int argc, char ** argv)
{
int i, passed = 0, num_tests = 0;
Eina_List *run = NULL;
double total;
- char *env;
eina_init();
ecore_init();
@@ -160,7 +132,6 @@ main(int argc, char ** argv)
}
efreet_cache_update = 0;
- environment_store();
for (i = 0; tests[i].name; i++)
{
int ret;
@@ -182,21 +153,18 @@ main(int argc, char ** argv)
printf("%s:\t\t", tests[i].name);
fflush(stdout);
start = ecore_time_get();
+
+ environ = NULL;
ret = tests[i].cb();
+
printf("%s in %.3f seconds\n", (ret ? "PASSED" : "FAILED"),
ecore_time_get() - start);
passed += ret;
efreet_shutdown();
- environment_restore();
}
printf("\n-----------------\n");
-#ifdef HAVE_CLEARENV
- clearenv();
- EINA_LIST_FREE(environment, env)
- free(env);
-#endif
printf("Passed %d of %d tests.\n", passed, num_tests);
while (run)