glsl/tests: changes to test_disk_cache_create test

Next patch will allow disk_cache instance to be created without
path set for it, modify some test cases that assume disk_cache
creation to fail with invalid path. Creation should succeed but
simple put/get test fail.

v2: leave tests as is but check that both cache struct exists
    and try simple put/get that should fail with invalid path set
    (Emil)

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> (v1)
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
This commit is contained in:
Tapani Pälli 2018-02-01 09:08:52 +02:00
parent 83c81b6cce
commit e8495646af
1 changed files with 22 additions and 6 deletions

View File

@ -182,6 +182,20 @@ wait_until_file_written(struct disk_cache *cache, const cache_key key)
}
}
static void *
cache_exists(struct disk_cache *cache)
{
uint8_t dummy_key[20];
char *data = "some test data";
if (!cache)
return NULL;
disk_cache_put(cache, dummy_key, data, sizeof(data), NULL);
wait_until_file_written(cache, dummy_key);
return disk_cache_get(cache, dummy_key, NULL);
}
#define CACHE_TEST_TMP "./cache-test-tmp"
static void
@ -213,12 +227,13 @@ test_disk_cache_create(void)
/* Test with XDG_CACHE_HOME set */
setenv("XDG_CACHE_HOME", CACHE_TEST_TMP "/xdg-cache-home", 1);
cache = disk_cache_create("test", "make_check", 0);
expect_null(cache, "disk_cache_create with XDG_CACHE_HOME set with"
"a non-existing parent directory");
expect_null(cache_exists(cache), "disk_cache_create with XDG_CACHE_HOME set "
"with a non-existing parent directory");
mkdir(CACHE_TEST_TMP, 0755);
cache = disk_cache_create("test", "make_check", 0);
expect_non_null(cache, "disk_cache_create with XDG_CACHE_HOME set");
expect_non_null(cache_exists(cache), "disk_cache_create with XDG_CACHE_HOME "
"set");
check_directories_created(CACHE_TEST_TMP "/xdg-cache-home/"
CACHE_DIR_NAME);
@ -231,12 +246,13 @@ test_disk_cache_create(void)
setenv("MESA_GLSL_CACHE_DIR", CACHE_TEST_TMP "/mesa-glsl-cache-dir", 1);
cache = disk_cache_create("test", "make_check", 0);
expect_null(cache, "disk_cache_create with MESA_GLSL_CACHE_DIR set with"
"a non-existing parent directory");
expect_null(cache_exists(cache), "disk_cache_create with MESA_GLSL_CACHE_DIR"
" set with a non-existing parent directory");
mkdir(CACHE_TEST_TMP, 0755);
cache = disk_cache_create("test", "make_check", 0);
expect_non_null(cache, "disk_cache_create with MESA_GLSL_CACHE_DIR set");
expect_non_null(cache_exists(cache), "disk_cache_create with "
"MESA_GLSL_CACHE_DIR set");
check_directories_created(CACHE_TEST_TMP "/mesa-glsl-cache-dir/"
CACHE_DIR_NAME);