From 07133e0a69ee8c3ce6fae8ec2323b722f4c14964 Mon Sep 17 00:00:00 2001 From: Geoffrey McRae Date: Fri, 31 Jul 2026 13:53:19 +1000 Subject: [PATCH] [client] tests: fix release build of font test --- .github/workflows/build.yml | 2 +- client/tests/font_test.c | 24 +++++++++++------------ client/tests/test.h | 38 +++++++++++++++++++++++++++++++++++++ 3 files changed, 51 insertions(+), 13 deletions(-) create mode 100644 client/tests/test.h diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1ab2da91..2955fc42 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -278,7 +278,7 @@ jobs: libsamplerate0-dev libpipewire-0.3-dev libpulse-dev - name: Download client build - uses: actions/download-artifact@v6 + uses: actions/download-artifact@v7 with: name: client-build-${{ matrix.compiler.cc }}-${{ matrix.wayland_shell }}-${{ matrix.build_type }} path: client-build diff --git a/client/tests/font_test.c b/client/tests/font_test.c index 88367b32..af8255f5 100644 --- a/client/tests/font_test.c +++ b/client/tests/font_test.c @@ -19,8 +19,8 @@ */ #include "font.h" +#include "test.h" -#include #include #include @@ -29,33 +29,33 @@ static void testInvalidFontData(void) const unsigned char emptySfnt[12] = { 0x00, 0x01, 0x00, 0x00, }; - assert(!font_isStbTruetypeCompatible( + CHECK(!font_isStbTruetypeCompatible( emptySfnt, sizeof(emptySfnt), 0)); const unsigned char truncatedTableDirectory[12] = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, }; - assert(!font_isStbTruetypeCompatible( + CHECK(!font_isStbTruetypeCompatible( truncatedTableDirectory, sizeof(truncatedTableDirectory), 0)); } static void testValidFontData(void) { FILE * file = fopen(FONT_TEST_FILE, "rb"); - assert(file); - assert(fseek(file, 0, SEEK_END) == 0); + CHECK(file); + CHECK(fseek(file, 0, SEEK_END) == 0); const long length = ftell(file); - assert(length > 0); - assert(fseek(file, 0, SEEK_SET) == 0); + CHECK(length > 0); + CHECK(fseek(file, 0, SEEK_SET) == 0); void * data = malloc((size_t)length); - assert(data); - assert(fread(data, 1, (size_t)length, file) == (size_t)length); - assert(fclose(file) == 0); + CHECK(data); + CHECK(fread(data, 1, (size_t)length, file) == (size_t)length); + CHECK(fclose(file) == 0); - assert(font_isStbTruetypeCompatible(data, (size_t)length, 0)); - assert(!font_isStbTruetypeCompatible(data, (size_t)length, 1)); + CHECK(font_isStbTruetypeCompatible(data, (size_t)length, 0)); + CHECK(!font_isStbTruetypeCompatible(data, (size_t)length, 1)); free(data); } diff --git a/client/tests/test.h b/client/tests/test.h new file mode 100644 index 00000000..a3a72652 --- /dev/null +++ b/client/tests/test.h @@ -0,0 +1,38 @@ +/** + * Looking Glass + * Copyright © 2017-2026 The Looking Glass Authors + * https://looking-glass.io + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., 59 + * Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef LG_CLIENT_TEST_H +#define LG_CLIENT_TEST_H + +#include +#include + +#define CHECK(x) \ + do \ + { \ + if (!(x)) \ + { \ + fprintf(stderr, "check failed at %s:%d: %s\n", __FILE__, __LINE__, #x); \ + exit(EXIT_FAILURE); \ + } \ + } \ + while (0) + +#endif