diff --git a/tests/Host/Linux/SystemFontsSearchTestsUbuntu.cpp b/tests/Host/Linux/SystemFontsSearchTestsUbuntu.cpp index 7db0018..18fc454 100644 --- a/tests/Host/Linux/SystemFontsSearchTestsUbuntu.cpp +++ b/tests/Host/Linux/SystemFontsSearchTestsUbuntu.cpp @@ -6,6 +6,7 @@ #include #include "Host/SystemFontResolver.hpp" +#include "Host/SystemInfo.hpp" #include "Base/Logger.hpp" #include @@ -15,18 +16,31 @@ TEST_CASE("Search system fonts") { Logger::SetupLogger("", "tests.log"); + OsVersion version = SystemInfo::GetOsVersion(); + std::array fontFiles = { "/usr/share/fonts/truetype/ubuntu/", "/usr/share/fonts/truetype/ubuntu/" }; + if (version.major <= 22) + { + fontFiles[0] += "Ubuntu-R.ttf"; + fontFiles[1] += "UbuntuMono-BI.ttf"; + } + else + { + fontFiles[0] += "Ubuntu[wdth,wght].ttf"; + fontFiles[1] += "UbuntuMono-Italic[wght].ttf"; + } + // assume these fonts are present since they are default std::string path = SystemFontResolver::GetSystemFontPath("Ubuntu Regular"); - REQUIRE(path == "/usr/share/fonts/truetype/ubuntu/Ubuntu-R.ttf"); + REQUIRE(path == fontFiles[0]); path = SystemFontResolver::GetSystemFontPath("ubuntu regular"); - REQUIRE(path == "/usr/share/fonts/truetype/ubuntu/Ubuntu-R.ttf"); + REQUIRE(path == fontFiles[0]); path = SystemFontResolver::GetSystemFontPath("Ubuntu Mono Bold Italic"); - REQUIRE(path == "/usr/share/fonts/truetype/ubuntu/UbuntuMono-BI.ttf"); + REQUIRE(path == fontFiles[1]); path = SystemFontResolver::GetSystemFontPath("ubuntu mono bold italic"); - REQUIRE(path == "/usr/share/fonts/truetype/ubuntu/UbuntuMono-BI.ttf"); + REQUIRE(path == fontFiles[1]); path = SystemFontResolver::GetSystemFontPath("NON-EXISTING Font"); REQUIRE(path.empty());