From dcd8ecee55b8aeb889856a138262acabfeddc496 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=ADn=20Lucas=20Golini?= Date: Wed, 29 Apr 2026 00:56:01 -0300 Subject: [PATCH] Split borders tests into two to fit in 650px height, which seems to be the maximum height we can use in macOS CI worker. --- bin/unit_tests/assets/html/border_tests.html | 43 --------- .../assets/html/border_tests_2.html | 86 ++++++++++++++++++ .../html/eepp-ui-border-rendering-2.webp | Bin 0 -> 3826 bytes .../assets/html/eepp-ui-border-rendering.webp | Bin 8208 -> 5258 bytes src/tests/unit_tests/uihtml_tests.cpp | 36 +++++++- 5 files changed, 121 insertions(+), 44 deletions(-) create mode 100644 bin/unit_tests/assets/html/border_tests_2.html create mode 100644 bin/unit_tests/assets/html/eepp-ui-border-rendering-2.webp diff --git a/bin/unit_tests/assets/html/border_tests.html b/bin/unit_tests/assets/html/border_tests.html index 7bbebcb2c..a71ec72d2 100644 --- a/bin/unit_tests/assets/html/border_tests.html +++ b/bin/unit_tests/assets/html/border_tests.html @@ -123,49 +123,6 @@
r20
-
-
radius diff
-
tl+br
-
tr+bl
-
mixed
-
tl32
-
- - -
-
part+radius
-
t+r r8
-
b+l r12
-
t+b r8
-
noL r8
-
- -
-
part+radius2
-
noB r8
-
noT r8
-
noR r8
-
t2+l6
-
- - -
-
thick+radius
-
8px/r12
-
12/r16
-
3px/r32
-
t12
-
- - -
-
large boxes
-
96x96
-
96x48
-
48x96
-
mixed96
-
-
diff --git a/bin/unit_tests/assets/html/border_tests_2.html b/bin/unit_tests/assets/html/border_tests_2.html new file mode 100644 index 000000000..1387e192e --- /dev/null +++ b/bin/unit_tests/assets/html/border_tests_2.html @@ -0,0 +1,86 @@ + + + + + + + + + +
+
radius diff
+
tl+br
+
tr+bl
+
mixed
+
tl32
+
+ + +
+
part+radius
+
t+r r8
+
b+l r12
+
t+b r8
+
noL r8
+
+ +
+
part+radius2
+
noB r8
+
noT r8
+
noR r8
+
t2+l6
+
+ + +
+
thick+radius
+
8px/r12
+
12/r16
+
3px/r32
+
t12
+
+ + +
+
large boxes
+
96x96
+
96x48
+
48x96
+
mixed96
+
+ +
+ + diff --git a/bin/unit_tests/assets/html/eepp-ui-border-rendering-2.webp b/bin/unit_tests/assets/html/eepp-ui-border-rendering-2.webp new file mode 100644 index 0000000000000000000000000000000000000000..d58b7da517959d03b0abb37ac1e5f054e08199ce GIT binary patch literal 3826 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 - WindowSettings( 1200, 900, "Border Rendering Test", WindowStyle::Default, + WindowSettings( 1200, 650, "Border Rendering Test", WindowStyle::Default, WindowBackend::Default, 32, {}, 1, false, true ), ContextSettings( false, 0, 0, GLv_default, true, false ) ); FileSystem::changeWorkingDirectory( Sys::getProcessPath() ); @@ -836,3 +836,37 @@ UTEST( UIBorder, renderingVariations ) { Engine::destroySingleton(); } + +UTEST( UIBorder, renderingVariations2 ) { + auto win = Engine::instance()->createWindow( + WindowSettings( 1200, 650, "Border Rendering Test 2", WindowStyle::Default, + WindowBackend::Default, 32, {}, 1, false, true ), + ContextSettings( false, 0, 0, GLv_default, true, false ) ); + FileSystem::changeWorkingDirectory( Sys::getProcessPath() ); + + FontTrueType* font = FontTrueType::New( "NotoSans-Regular" ); + font->loadFromFile( "../assets/fonts/NotoSans-Regular.ttf" ); + ASSERT_TRUE( font != nullptr && font->loaded() ); + FontFamily::loadFromRegular( font ); + + UI::UISceneNode* sceneNode = UI::UISceneNode::New(); + SceneManager::instance()->add( sceneNode ); + UI::UIThemeManager* themeManager = sceneNode->getUIThemeManager(); + themeManager->setDefaultFont( font ); + sceneNode->setURI( "file://" + Sys::getProcessPath() + "assets/html/" ); + std::string html; + FileSystem::fileGet( "assets/html/border_tests_2.html", html ); + sceneNode->loadLayoutFromString( HTMLFormatter::HTMLtoXML( html ) ); + win->setClearColor( Color::White ); + + win->getInput()->update(); + SceneManager::instance()->update(); + + win->clear(); + SceneManager::instance()->draw(); + win->display(); + + compareImages( utest_state, utest_result, win, "eepp-ui-border-rendering-2", "html" ); + + Engine::destroySingleton(); +}