On Wed, Dec 04, 2019 at 04:46:15PM +0100, Thomas Huth wrote:
> In certain environments like restricted containers, we can not create
> huge test images. To be able to use "make check" in such container
> environments, too, let's skip the hd-geo-test instead of failing when
> the test images could not be created.
>
> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> tests/hd-geo-test.c | 12 +++++++++++-
> 1 file changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/tests/hd-geo-test.c b/tests/hd-geo-test.c
> index 7e86c5416c..a249800544 100644
> --- a/tests/hd-geo-test.c
> +++ b/tests/hd-geo-test.c
> @@ -34,8 +34,13 @@ static char *create_test_img(int secs)
> fd = mkstemp(template);
> g_assert(fd >= 0);
> ret = ftruncate(fd, (off_t)secs * 512);
> - g_assert(ret == 0);
> close(fd);
> +
> + if (ret) {
> + free(template);
> + template = NULL;
> + }
> +
> return template;
> }
>
> @@ -934,6 +939,10 @@ int main(int argc, char **argv)
> for (i = 0; i < backend_last; i++) {
> if (img_secs[i] >= 0) {
> img_file_name[i] = create_test_img(img_secs[i]);
> + if (!img_file_name[i]) {
> + g_test_message("Could not create test images.");
> + goto test_add_done;
> + }
> } else {
> img_file_name[i] = NULL;
> }
> @@ -965,6 +974,7 @@ int main(int argc, char **argv)
> "skipping hd-geo/override/* tests");
> }
>
> +test_add_done:
> ret = g_test_run();
>
> for (i = 0; i < backend_last; i++) {
> --
> 2.18.1
>
Reviewed-by: Cleber Rosa <crosa@redhat.com>
Tested-by: Cleber Rosa <crosa@redhat.com>