refactor: move built-in icon upload into imgui backend
This commit is contained in:
@@ -11,6 +11,7 @@ set(EDITOR_TEST_SOURCES
|
||||
test_scene_viewport_picker.cpp
|
||||
test_scene_viewport_overlay_renderer.cpp
|
||||
test_viewport_host_surface_utils.cpp
|
||||
test_builtin_icon_layout_utils.cpp
|
||||
${CMAKE_SOURCE_DIR}/editor/src/Core/UndoManager.cpp
|
||||
${CMAKE_SOURCE_DIR}/editor/src/Managers/SceneManager.cpp
|
||||
${CMAKE_SOURCE_DIR}/editor/src/Managers/ProjectManager.cpp
|
||||
|
||||
40
tests/editor/test_builtin_icon_layout_utils.cpp
Normal file
40
tests/editor/test_builtin_icon_layout_utils.cpp
Normal file
@@ -0,0 +1,40 @@
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "UI/BuiltInIconLayoutUtils.h"
|
||||
|
||||
namespace {
|
||||
|
||||
using XCEngine::Editor::UI::ComputeFittedIconSize;
|
||||
|
||||
TEST(BuiltInIconLayoutUtilsTest, ReturnsZeroWhenTextureOrBoundsAreInvalid) {
|
||||
EXPECT_EQ(
|
||||
ComputeFittedIconSize(0, 64, ImVec2(0.0f, 0.0f), ImVec2(64.0f, 64.0f)).x,
|
||||
0.0f);
|
||||
EXPECT_EQ(
|
||||
ComputeFittedIconSize(64, 64, ImVec2(10.0f, 0.0f), ImVec2(10.0f, 64.0f)).y,
|
||||
0.0f);
|
||||
}
|
||||
|
||||
TEST(BuiltInIconLayoutUtilsTest, FitsWidthLimitedRegions) {
|
||||
const ImVec2 size = ComputeFittedIconSize(
|
||||
256,
|
||||
128,
|
||||
ImVec2(0.0f, 0.0f),
|
||||
ImVec2(64.0f, 64.0f));
|
||||
|
||||
EXPECT_FLOAT_EQ(size.x, 64.0f);
|
||||
EXPECT_FLOAT_EQ(size.y, 32.0f);
|
||||
}
|
||||
|
||||
TEST(BuiltInIconLayoutUtilsTest, FitsHeightLimitedRegions) {
|
||||
const ImVec2 size = ComputeFittedIconSize(
|
||||
128,
|
||||
256,
|
||||
ImVec2(0.0f, 0.0f),
|
||||
ImVec2(80.0f, 40.0f));
|
||||
|
||||
EXPECT_FLOAT_EQ(size.x, 20.0f);
|
||||
EXPECT_FLOAT_EQ(size.y, 40.0f);
|
||||
}
|
||||
|
||||
} // namespace
|
||||
Reference in New Issue
Block a user