Compare commits

...

6 Commits

Author SHA1 Message Date
06d9b4c910 fixed naming in tests 2025-07-07 08:02:35 +03:00
a074fdcb92 Merge pull request #45 from luadebug/patch-1
Check for ImGUI dependency in omathConfig.cmake.in
2025-07-07 05:30:19 +03:00
Saikari
8241d9c355 Update omathConfig.cmake.in 2025-07-07 04:53:56 +03:00
66258f0f6d Updates CMake export target and namespace.
Updates the CMake export target and namespace to use the project name,
improving consistency and avoiding naming conflicts.

Adds a simple diagram to the triangle header file.
2025-07-06 11:14:46 +03:00
65541fa2c7 Renames library target to project name
Updates the CMakeLists.txt to use the project name as the library target name instead of hardcoding "omath".

This change ensures consistency and avoids potential conflicts when integrating the library into other projects.
It also aligns the target naming with CMake best practices.
2025-07-06 11:07:15 +03:00
7e4a6134bf added new method 2025-06-23 06:14:17 +03:00
12 changed files with 118 additions and 105 deletions

View File

@@ -20,20 +20,21 @@ file(GLOB_RECURSE OMATH_HEADERS CONFIGURE_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/i
if (OMATH_BUILD_AS_SHARED_LIBRARY) if (OMATH_BUILD_AS_SHARED_LIBRARY)
add_library(omath SHARED ${OMATH_SOURCES} ${OMATH_HEADERS}) add_library(${PROJECT_NAME} SHARED ${OMATH_SOURCES} ${OMATH_HEADERS})
else () else ()
add_library(omath STATIC ${OMATH_SOURCES} ${OMATH_HEADERS}) add_library(${PROJECT_NAME} STATIC ${OMATH_SOURCES} ${OMATH_HEADERS})
endif () endif ()
message(STATUS "Building on ${CMAKE_HOST_SYSTEM_NAME}") message(STATUS "[OMATH]: Building on ${CMAKE_HOST_SYSTEM_NAME}")
add_library(omath::omath ALIAS omath)
add_library(${PROJECT_NAME}::${PROJECT_NAME} ALIAS ${PROJECT_NAME})
if (OMATH_IMGUI_INTEGRATION) if (OMATH_IMGUI_INTEGRATION)
target_compile_definitions(omath PUBLIC OMATH_IMGUI_INTEGRATION) target_compile_definitions(${PROJECT_NAME} PUBLIC OMATH_IMGUI_INTEGRATION)
# IMGUI is being linked as submodule # IMGUI is being linked as submodule
if (TARGET imgui) if (TARGET imgui)
target_link_libraries(omath PUBLIC imgui) target_link_libraries(${PROJECT_NAME} PUBLIC imgui)
install(TARGETS imgui install(TARGETS imgui
EXPORT omathTargets EXPORT omathTargets
ARCHIVE DESTINATION lib ARCHIVE DESTINATION lib
@@ -42,42 +43,42 @@ if (OMATH_IMGUI_INTEGRATION)
else () else ()
# Assume that IMGUI linked via VCPKG. # Assume that IMGUI linked via VCPKG.
find_package(imgui CONFIG REQUIRED) find_package(imgui CONFIG REQUIRED)
target_link_libraries(omath PUBLIC imgui::imgui) target_link_libraries(${PROJECT_NAME} PUBLIC imgui::imgui)
endif () endif ()
endif () endif ()
if (OMATH_USE_AVX2) if (OMATH_USE_AVX2)
target_compile_definitions(omath PUBLIC OMATH_USE_AVX2) target_compile_definitions(${PROJECT_NAME} PUBLIC OMATH_USE_AVX2)
endif () endif ()
if (OMATH_SUPRESS_SAFETY_CHECKS) if (OMATH_SUPRESS_SAFETY_CHECKS)
target_compile_definitions(omath PUBLIC OMATH_SUPRESS_SAFETY_CHECKS) target_compile_definitions(${PROJECT_NAME} PUBLIC OMATH_SUPRESS_SAFETY_CHECKS)
endif () endif ()
set_target_properties(omath PROPERTIES set_target_properties(${PROJECT_NAME} PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/out/${CMAKE_BUILD_TYPE}" ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/out/${CMAKE_BUILD_TYPE}"
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/out/${CMAKE_BUILD_TYPE}" LIBRARY_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/out/${CMAKE_BUILD_TYPE}"
CXX_STANDARD 23 CXX_STANDARD 23
CXX_STANDARD_REQUIRED ON) CXX_STANDARD_REQUIRED ON)
if (OMATH_USE_UNITY_BUILD) if (OMATH_USE_UNITY_BUILD)
set_target_properties(omath PROPERTIES set_target_properties(${PROJECT_NAME} PROPERTIES
UNITY_BUILD ON UNITY_BUILD ON
UNITY_BUILD_BATCH_SIZE 20) UNITY_BUILD_BATCH_SIZE 20)
endif () endif ()
if (OMATH_STATIC_MSVC_RUNTIME_LIBRARY) if (OMATH_STATIC_MSVC_RUNTIME_LIBRARY)
set_target_properties(omath PROPERTIES set_target_properties(${PROJECT_NAME} PROPERTIES
MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>" MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>"
) )
endif () endif ()
if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
target_compile_options(omath PRIVATE -mavx2 -mfma) target_compile_options(${PROJECT_NAME} PRIVATE -mavx2 -mfma)
endif () endif ()
target_compile_features(omath PUBLIC cxx_std_23) target_compile_features(${PROJECT_NAME} PUBLIC cxx_std_23)
if (OMATH_BUILD_TESTS) if (OMATH_BUILD_TESTS)
@@ -90,12 +91,12 @@ if (OMATH_BUILD_EXAMPLES)
endif () endif ()
if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" AND OMATH_THREAT_WARNING_AS_ERROR) if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" AND OMATH_THREAT_WARNING_AS_ERROR)
target_compile_options(omath PRIVATE /W4 /WX) target_compile_options(${PROJECT_NAME} PRIVATE /W4 /WX)
elseif (OMATH_THREAT_WARNING_AS_ERROR) elseif (OMATH_THREAT_WARNING_AS_ERROR)
target_compile_options(omath PRIVATE -Wall -Wextra -Wpedantic -Werror) target_compile_options(${PROJECT_NAME} PRIVATE -Wall -Wextra -Wpedantic -Werror)
endif () endif ()
target_include_directories(omath target_include_directories(${PROJECT_NAME}
PUBLIC PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> # Use this path when building the project $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> # Use this path when building the project
$<INSTALL_INTERFACE:include> # Use this path when the project is installed $<INSTALL_INTERFACE:include> # Use this path when the project is installed
@@ -105,21 +106,21 @@ target_include_directories(omath
# Installation rules # Installation rules
# Install the library # Install the library
install(TARGETS omath install(TARGETS ${PROJECT_NAME}
EXPORT omathTargets EXPORT ${PROJECT_NAME}Targets
ARCHIVE DESTINATION lib COMPONENT omath # For static libraries ARCHIVE DESTINATION lib COMPONENT ${PROJECT_NAME} # For static libraries
LIBRARY DESTINATION lib COMPONENT omath # For shared libraries LIBRARY DESTINATION lib COMPONENT ${PROJECT_NAME} # For shared libraries
RUNTIME DESTINATION bin COMPONENT omath # For executables (on Windows) RUNTIME DESTINATION bin COMPONENT ${PROJECT_NAME} # For executables (on Windows)
) )
# Install headers as part of omath_component # Install headers as part of omath_component
install(DIRECTORY include/ DESTINATION include COMPONENT omath) install(DIRECTORY include/ DESTINATION include COMPONENT ${PROJECT_NAME})
# Export omath target for CMake find_package support, also under omath_component # Export omath target for CMake find_package support, also under omath_component
install(EXPORT omathTargets install(EXPORT ${PROJECT_NAME}Targets
FILE omathTargets.cmake FILE ${PROJECT_NAME}Targets.cmake
NAMESPACE omath:: NAMESPACE ${PROJECT_NAME}::
DESTINATION lib/cmake/omath COMPONENT omath DESTINATION lib/cmake/${PROJECT_NAME} COMPONENT ${PROJECT_NAME}
) )
@@ -134,12 +135,12 @@ write_basic_package_version_file(
configure_package_config_file( configure_package_config_file(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/omathConfig.cmake.in" # Path to the .in file "${CMAKE_CURRENT_SOURCE_DIR}/cmake/omathConfig.cmake.in" # Path to the .in file
"${CMAKE_CURRENT_BINARY_DIR}/omathConfig.cmake" # Output path for the generated file "${CMAKE_CURRENT_BINARY_DIR}/omathConfig.cmake" # Output path for the generated file
INSTALL_DESTINATION lib/cmake/omath INSTALL_DESTINATION lib/cmake/${PROJECT_NAME}
) )
# Install the generated config files # Install the generated config files
install(FILES install(FILES
"${CMAKE_CURRENT_BINARY_DIR}/omathConfig.cmake" "${CMAKE_CURRENT_BINARY_DIR}/omathConfig.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/omathConfigVersion.cmake" "${CMAKE_CURRENT_BINARY_DIR}/omathConfigVersion.cmake"
DESTINATION lib/cmake/omath DESTINATION lib/cmake/${PROJECT_NAME}
) )

View File

@@ -2,6 +2,10 @@
include(CMakeFindDependencyMacro) include(CMakeFindDependencyMacro)
if (@OMATH_IMGUI_INTEGRATION@)
find_dependency(imgui CONFIG)
endif()
# Load the targets for the omath library # Load the targets for the omath library
include("${CMAKE_CURRENT_LIST_DIR}/omathTargets.cmake") include("${CMAKE_CURRENT_LIST_DIR}/omathTargets.cmake")
check_required_components(omath) check_required_components(omath)

View File

@@ -166,5 +166,12 @@ namespace omath
{ {
return {0.f, 0.f, 1.f, 1.f}; return {0.f, 0.f, 1.f, 1.f};
} }
#ifdef OMATH_IMGUI_INTEGRATION
[[nodiscard]]
ImColor to_im_color() const noexcept
{
return {to_im_vec4()};
}
#endif
}; };
} // namespace omath } // namespace omath

View File

@@ -7,11 +7,12 @@
namespace omath namespace omath
{ {
/* /*
v1
|\ |\
| \ | \
a | \ hypot a | \ hypot
| \ | \
----- v2 ----- v3
b b
*/ */

View File

@@ -5,7 +5,7 @@ project(unit_tests)
include(GoogleTest) include(GoogleTest)
file(GLOB_RECURSE UNIT_TESTS_SOURCES CONFIGURE_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp") file(GLOB_RECURSE UNIT_TESTS_SOURCES CONFIGURE_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp")
add_executable(unit_tests ${UNIT_TESTS_SOURCES}) add_executable(${PROJECT_NAME} ${UNIT_TESTS_SOURCES})
set_target_properties(unit_tests PROPERTIES set_target_properties(unit_tests PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/out/${CMAKE_BUILD_TYPE}" ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/out/${CMAKE_BUILD_TYPE}"
@@ -17,6 +17,6 @@ set_target_properties(unit_tests PROPERTIES
CXX_STANDARD_REQUIRED ON) CXX_STANDARD_REQUIRED ON)
target_link_libraries(unit_tests PRIVATE gtest gtest_main omath::omath) target_link_libraries(${PROJECT_NAME} PRIVATE gtest gtest_main omath::omath)
gtest_discover_tests(unit_tests) gtest_discover_tests(${PROJECT_NAME})

View File

@@ -7,27 +7,27 @@
#include <omath/engines/iw_engine/formulas.hpp> #include <omath/engines/iw_engine/formulas.hpp>
TEST(UnitTestIwEngine, ForwardVector) TEST(unit_test_iw_engine, ForwardVector)
{ {
const auto forward = omath::iw_engine::forward_vector({}); const auto forward = omath::iw_engine::forward_vector({});
EXPECT_EQ(forward, omath::iw_engine::k_abs_forward); EXPECT_EQ(forward, omath::iw_engine::k_abs_forward);
} }
TEST(UnitTestIwEngine, RightVector) TEST(unit_test_iw_engine, RightVector)
{ {
const auto right = omath::iw_engine::right_vector({}); const auto right = omath::iw_engine::right_vector({});
EXPECT_EQ(right, omath::iw_engine::k_abs_right); EXPECT_EQ(right, omath::iw_engine::k_abs_right);
} }
TEST(UnitTestIwEngine, UpVector) TEST(unit_test_iw_engine, UpVector)
{ {
const auto up = omath::iw_engine::up_vector({}); const auto up = omath::iw_engine::up_vector({});
EXPECT_EQ(up, omath::iw_engine::k_abs_up); EXPECT_EQ(up, omath::iw_engine::k_abs_up);
} }
TEST(UnitTestIwEngine, ForwardVectorRotationYaw) TEST(unit_test_iw_engine, ForwardVectorRotationYaw)
{ {
omath::iw_engine::ViewAngles angles; omath::iw_engine::ViewAngles angles;
@@ -39,7 +39,7 @@ TEST(UnitTestIwEngine, ForwardVectorRotationYaw)
EXPECT_NEAR(forward.z, omath::iw_engine::k_abs_right.z, 0.00001f); EXPECT_NEAR(forward.z, omath::iw_engine::k_abs_right.z, 0.00001f);
} }
TEST(UnitTestIwEngine, ForwardVectorRotationPitch) TEST(unit_test_iw_engine, ForwardVectorRotationPitch)
{ {
omath::iw_engine::ViewAngles angles; omath::iw_engine::ViewAngles angles;
@@ -51,7 +51,7 @@ TEST(UnitTestIwEngine, ForwardVectorRotationPitch)
EXPECT_NEAR(forward.z, omath::iw_engine::k_abs_up.z, 0.01f); EXPECT_NEAR(forward.z, omath::iw_engine::k_abs_up.z, 0.01f);
} }
TEST(UnitTestIwEngine, ForwardVectorRotationRoll) TEST(unit_test_iw_engine, ForwardVectorRotationRoll)
{ {
omath::iw_engine::ViewAngles angles; omath::iw_engine::ViewAngles angles;
@@ -63,7 +63,7 @@ TEST(UnitTestIwEngine, ForwardVectorRotationRoll)
EXPECT_NEAR(forward.z, omath::iw_engine::k_abs_right.z, 0.00001f); EXPECT_NEAR(forward.z, omath::iw_engine::k_abs_right.z, 0.00001f);
} }
TEST(UnitTestIwEngine, ProjectTargetMovedFromCamera) TEST(unit_test_iw_engine, ProjectTargetMovedFromCamera)
{ {
constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f); constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f);
const auto cam = omath::iw_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f); const auto cam = omath::iw_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f);
@@ -83,7 +83,7 @@ TEST(UnitTestIwEngine, ProjectTargetMovedFromCamera)
} }
} }
TEST(UnitTestIwEngine, CameraSetAndGetFov) TEST(unit_test_iw_engine, CameraSetAndGetFov)
{ {
constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f); constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f);
auto cam = omath::iw_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f); auto cam = omath::iw_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f);
@@ -94,7 +94,7 @@ TEST(UnitTestIwEngine, CameraSetAndGetFov)
EXPECT_EQ(cam.get_field_of_view().as_degrees(), 50.f); EXPECT_EQ(cam.get_field_of_view().as_degrees(), 50.f);
} }
TEST(UnitTestIwEngine, CameraSetAndGetOrigin) TEST(unit_test_iw_engine, CameraSetAndGetOrigin)
{ {
auto cam = omath::iw_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, {}, 0.01f, 1000.f); auto cam = omath::iw_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, {}, 0.01f, 1000.f);

View File

@@ -7,25 +7,25 @@
#include <omath/engines/opengl_engine/formulas.hpp> #include <omath/engines/opengl_engine/formulas.hpp>
TEST(UnitTestOpenGL, ForwardVector) TEST(unit_test_opengl, ForwardVector)
{ {
const auto forward = omath::opengl_engine::forward_vector({}); const auto forward = omath::opengl_engine::forward_vector({});
EXPECT_EQ(forward, omath::opengl_engine::k_abs_forward); EXPECT_EQ(forward, omath::opengl_engine::k_abs_forward);
} }
TEST(UnitTestOpenGL, RightVector) TEST(unit_test_opengl, RightVector)
{ {
const auto right = omath::opengl_engine::right_vector({}); const auto right = omath::opengl_engine::right_vector({});
EXPECT_EQ(right, omath::opengl_engine::k_abs_right); EXPECT_EQ(right, omath::opengl_engine::k_abs_right);
} }
TEST(UnitTestOpenGL, UpVector) TEST(unit_test_opengl, UpVector)
{ {
const auto up = omath::opengl_engine::up_vector({}); const auto up = omath::opengl_engine::up_vector({});
EXPECT_EQ(up, omath::opengl_engine::k_abs_up); EXPECT_EQ(up, omath::opengl_engine::k_abs_up);
} }
TEST(UnitTestOpenGL, ForwardVectorRotationYaw) TEST(unit_test_opengl, ForwardVectorRotationYaw)
{ {
omath::opengl_engine::ViewAngles angles; omath::opengl_engine::ViewAngles angles;
@@ -39,7 +39,7 @@ TEST(UnitTestOpenGL, ForwardVectorRotationYaw)
TEST(UnitTestOpenGL, ForwardVectorRotationPitch) TEST(unit_test_opengl, ForwardVectorRotationPitch)
{ {
omath::opengl_engine::ViewAngles angles; omath::opengl_engine::ViewAngles angles;
@@ -51,7 +51,7 @@ TEST(UnitTestOpenGL, ForwardVectorRotationPitch)
EXPECT_NEAR(forward.z, omath::opengl_engine::k_abs_up.z, 0.00001f); EXPECT_NEAR(forward.z, omath::opengl_engine::k_abs_up.z, 0.00001f);
} }
TEST(UnitTestOpenGL, ForwardVectorRotationRoll) TEST(unit_test_opengl, ForwardVectorRotationRoll)
{ {
omath::opengl_engine::ViewAngles angles; omath::opengl_engine::ViewAngles angles;
@@ -63,7 +63,7 @@ TEST(UnitTestOpenGL, ForwardVectorRotationRoll)
EXPECT_NEAR(forward.z, omath::opengl_engine::k_abs_right.z, 0.00001f); EXPECT_NEAR(forward.z, omath::opengl_engine::k_abs_right.z, 0.00001f);
} }
TEST(UnitTestOpenGL, ProjectTargetMovedFromCamera) TEST(unit_test_opengl, ProjectTargetMovedFromCamera)
{ {
constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f); constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f);
const auto cam = omath::opengl_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f); const auto cam = omath::opengl_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f);
@@ -83,7 +83,7 @@ TEST(UnitTestOpenGL, ProjectTargetMovedFromCamera)
} }
} }
TEST(UnitTestOpenGL, CameraSetAndGetFov) TEST(unit_test_opengl, CameraSetAndGetFov)
{ {
constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f); constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f);
auto cam = omath::opengl_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f); auto cam = omath::opengl_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f);
@@ -94,7 +94,7 @@ TEST(UnitTestOpenGL, CameraSetAndGetFov)
EXPECT_EQ(cam.get_field_of_view().as_degrees(), 50.f); EXPECT_EQ(cam.get_field_of_view().as_degrees(), 50.f);
} }
TEST(UnitTestOpenGL, CameraSetAndGetOrigin) TEST(unit_test_opengl, CameraSetAndGetOrigin)
{ {
auto cam = omath::opengl_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, {}, 0.01f, 1000.f); auto cam = omath::opengl_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, {}, 0.01f, 1000.f);

View File

@@ -7,27 +7,27 @@
#include <omath/engines/source_engine/formulas.hpp> #include <omath/engines/source_engine/formulas.hpp>
TEST(UnitTestSourceEngine, ForwardVector) TEST(unit_test_source_engine, ForwardVector)
{ {
const auto forward = omath::source_engine::forward_vector({}); const auto forward = omath::source_engine::forward_vector({});
EXPECT_EQ(forward, omath::source_engine::k_abs_forward); EXPECT_EQ(forward, omath::source_engine::k_abs_forward);
} }
TEST(UnitTestSourceEngine, RightVector) TEST(unit_test_source_engine, RightVector)
{ {
const auto right = omath::source_engine::right_vector({}); const auto right = omath::source_engine::right_vector({});
EXPECT_EQ(right, omath::source_engine::k_abs_right); EXPECT_EQ(right, omath::source_engine::k_abs_right);
} }
TEST(UnitTestSourceEngine, UpVector) TEST(unit_test_source_engine, UpVector)
{ {
const auto up = omath::source_engine::up_vector({}); const auto up = omath::source_engine::up_vector({});
EXPECT_EQ(up, omath::source_engine::k_abs_up); EXPECT_EQ(up, omath::source_engine::k_abs_up);
} }
TEST(UnitTestSourceEngine, ForwardVectorRotationYaw) TEST(unit_test_source_engine, ForwardVectorRotationYaw)
{ {
omath::source_engine::ViewAngles angles; omath::source_engine::ViewAngles angles;
@@ -39,7 +39,7 @@ TEST(UnitTestSourceEngine, ForwardVectorRotationYaw)
EXPECT_NEAR(forward.z, omath::source_engine::k_abs_right.z, 0.00001f); EXPECT_NEAR(forward.z, omath::source_engine::k_abs_right.z, 0.00001f);
} }
TEST(UnitTestSourceEngine, ForwardVectorRotationPitch) TEST(unit_test_source_engine, ForwardVectorRotationPitch)
{ {
omath::source_engine::ViewAngles angles; omath::source_engine::ViewAngles angles;
@@ -51,7 +51,7 @@ TEST(UnitTestSourceEngine, ForwardVectorRotationPitch)
EXPECT_NEAR(forward.z, omath::source_engine::k_abs_up.z, 0.01f); EXPECT_NEAR(forward.z, omath::source_engine::k_abs_up.z, 0.01f);
} }
TEST(UnitTestSourceEngine, ForwardVectorRotationRoll) TEST(unit_test_source_engine, ForwardVectorRotationRoll)
{ {
omath::source_engine::ViewAngles angles; omath::source_engine::ViewAngles angles;
@@ -63,7 +63,7 @@ TEST(UnitTestSourceEngine, ForwardVectorRotationRoll)
EXPECT_NEAR(forward.z, omath::source_engine::k_abs_right.z, 0.00001f); EXPECT_NEAR(forward.z, omath::source_engine::k_abs_right.z, 0.00001f);
} }
TEST(UnitTestSourceEngine, ProjectTargetMovedFromCamera) TEST(unit_test_source_engine, ProjectTargetMovedFromCamera)
{ {
constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f); constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f);
const auto cam = omath::source_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f); const auto cam = omath::source_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f);
@@ -83,7 +83,7 @@ TEST(UnitTestSourceEngine, ProjectTargetMovedFromCamera)
} }
} }
TEST(UnitTestSourceEngine, ProjectTargetMovedUp) TEST(unit_test_source_engine, ProjectTargetMovedUp)
{ {
constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f); constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f);
const auto cam = omath::source_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f); const auto cam = omath::source_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f);
@@ -103,7 +103,7 @@ TEST(UnitTestSourceEngine, ProjectTargetMovedUp)
} }
} }
TEST(UnitTestSourceEngine, CameraSetAndGetFov) TEST(unit_test_source_engine, CameraSetAndGetFov)
{ {
constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f); constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f);
auto cam = omath::source_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f); auto cam = omath::source_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f);
@@ -114,7 +114,7 @@ TEST(UnitTestSourceEngine, CameraSetAndGetFov)
EXPECT_EQ(cam.get_field_of_view().as_degrees(), 50.f); EXPECT_EQ(cam.get_field_of_view().as_degrees(), 50.f);
} }
TEST(UnitTestSourceEngine, CameraSetAndGetOrigin) TEST(unit_test_source_engine, CameraSetAndGetOrigin)
{ {
auto cam = omath::source_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, {}, 0.01f, 1000.f); auto cam = omath::source_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, {}, 0.01f, 1000.f);

View File

@@ -7,14 +7,14 @@
#include <omath/engines/unity_engine/formulas.hpp> #include <omath/engines/unity_engine/formulas.hpp>
#include <print> #include <print>
TEST(UnitTestUnityEngine, ForwardVector) TEST(unit_test_unity_engine, ForwardVector)
{ {
const auto forward = omath::unity_engine::forward_vector({}); const auto forward = omath::unity_engine::forward_vector({});
EXPECT_EQ(forward, omath::unity_engine::k_abs_forward); EXPECT_EQ(forward, omath::unity_engine::k_abs_forward);
} }
TEST(UnitTestUnityEngine, ForwardVectorRotationYaw) TEST(unit_test_unity_engine, ForwardVectorRotationYaw)
{ {
omath::unity_engine::ViewAngles angles; omath::unity_engine::ViewAngles angles;
@@ -26,7 +26,7 @@ TEST(UnitTestUnityEngine, ForwardVectorRotationYaw)
EXPECT_NEAR(forward.z, omath::unity_engine::k_abs_right.z, 0.00001f); EXPECT_NEAR(forward.z, omath::unity_engine::k_abs_right.z, 0.00001f);
} }
TEST(UnitTestUnityEngine, ForwardVectorRotationPitch) TEST(unit_test_unity_engine, ForwardVectorRotationPitch)
{ {
omath::unity_engine::ViewAngles angles; omath::unity_engine::ViewAngles angles;
@@ -38,7 +38,7 @@ TEST(UnitTestUnityEngine, ForwardVectorRotationPitch)
EXPECT_NEAR(forward.z, omath::unity_engine::k_abs_up.z, 0.00001f); EXPECT_NEAR(forward.z, omath::unity_engine::k_abs_up.z, 0.00001f);
} }
TEST(UnitTestUnityEngine, ForwardVectorRotationRoll) TEST(unit_test_unity_engine, ForwardVectorRotationRoll)
{ {
omath::unity_engine::ViewAngles angles; omath::unity_engine::ViewAngles angles;
@@ -50,20 +50,20 @@ TEST(UnitTestUnityEngine, ForwardVectorRotationRoll)
EXPECT_NEAR(forward.z, omath::unity_engine::k_abs_right.z, 0.00001f); EXPECT_NEAR(forward.z, omath::unity_engine::k_abs_right.z, 0.00001f);
} }
TEST(UnitTestUnityEngine, RightVector) TEST(unit_test_unity_engine, RightVector)
{ {
const auto right = omath::unity_engine::right_vector({}); const auto right = omath::unity_engine::right_vector({});
EXPECT_EQ(right, omath::unity_engine::k_abs_right); EXPECT_EQ(right, omath::unity_engine::k_abs_right);
} }
TEST(UnitTestUnityEngine, UpVector) TEST(unit_test_unity_engine, UpVector)
{ {
const auto up = omath::unity_engine::up_vector({}); const auto up = omath::unity_engine::up_vector({});
EXPECT_EQ(up, omath::unity_engine::k_abs_up); EXPECT_EQ(up, omath::unity_engine::k_abs_up);
} }
TEST(UnitTestUnityEngine, ProjectTargetMovedFromCamera) TEST(unit_test_unity_engine, ProjectTargetMovedFromCamera)
{ {
constexpr auto fov = omath::projection::FieldOfView::from_degrees(60.f); constexpr auto fov = omath::projection::FieldOfView::from_degrees(60.f);
const auto cam = omath::unity_engine::Camera({0, 0, 0}, {}, {1280.f, 720.f}, fov, 0.01f, 1000.f); const auto cam = omath::unity_engine::Camera({0, 0, 0}, {}, {1280.f, 720.f}, fov, 0.01f, 1000.f);
@@ -82,7 +82,7 @@ TEST(UnitTestUnityEngine, ProjectTargetMovedFromCamera)
EXPECT_NEAR(projected->y, 360, 0.00001f); EXPECT_NEAR(projected->y, 360, 0.00001f);
} }
} }
TEST(UnitTestUnityEngine, Project) TEST(unit_test_unity_engine, Project)
{ {
constexpr auto fov = omath::projection::FieldOfView::from_degrees(60.f); constexpr auto fov = omath::projection::FieldOfView::from_degrees(60.f);
@@ -91,7 +91,7 @@ TEST(UnitTestUnityEngine, Project)
std::println("{} {}", proj->x, proj->y); std::println("{} {}", proj->x, proj->y);
} }
TEST(UnitTestUnityEngine, CameraSetAndGetFov) TEST(unit_test_unity_engine, CameraSetAndGetFov)
{ {
constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f); constexpr auto fov = omath::projection::FieldOfView::from_degrees(90.f);
auto cam = omath::unity_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f); auto cam = omath::unity_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, fov, 0.01f, 1000.f);
@@ -102,7 +102,7 @@ TEST(UnitTestUnityEngine, CameraSetAndGetFov)
EXPECT_EQ(cam.get_field_of_view().as_degrees(), 50.f); EXPECT_EQ(cam.get_field_of_view().as_degrees(), 50.f);
} }
TEST(UnitTestUnityEngine, CameraSetAndGetOrigin) TEST(unit_test_unity_engine, CameraSetAndGetOrigin)
{ {
auto cam = omath::unity_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, {}, 0.01f, 1000.f); auto cam = omath::unity_engine::Camera({0, 0, 0}, {}, {1920.f, 1080.f}, {}, 0.01f, 1000.f);

View File

@@ -7,7 +7,7 @@
using namespace omath; using namespace omath;
class UnitTestColor : public ::testing::Test class unit_test_color : public ::testing::Test
{ {
protected: protected:
Color color1; Color color1;
@@ -21,7 +21,7 @@ protected:
}; };
// Test constructors // Test constructors
TEST_F(UnitTestColor, Constructor_Float) TEST_F(unit_test_color, Constructor_Float)
{ {
constexpr Color color(0.5f, 0.5f, 0.5f, 1.0f); constexpr Color color(0.5f, 0.5f, 0.5f, 1.0f);
EXPECT_FLOAT_EQ(color.x, 0.5f); EXPECT_FLOAT_EQ(color.x, 0.5f);
@@ -30,7 +30,7 @@ TEST_F(UnitTestColor, Constructor_Float)
EXPECT_FLOAT_EQ(color.w, 1.0f); EXPECT_FLOAT_EQ(color.w, 1.0f);
} }
TEST_F(UnitTestColor, Constructor_Vector4) TEST_F(unit_test_color, Constructor_Vector4)
{ {
constexpr omath::Vector4 vec(0.2f, 0.4f, 0.6f, 0.8f); constexpr omath::Vector4 vec(0.2f, 0.4f, 0.6f, 0.8f);
Color color(vec); Color color(vec);
@@ -41,7 +41,7 @@ TEST_F(UnitTestColor, Constructor_Vector4)
} }
// Test static methods for color creation // Test static methods for color creation
TEST_F(UnitTestColor, FromRGBA) TEST_F(unit_test_color, FromRGBA)
{ {
constexpr Color color = Color::from_rgba(128, 64, 32, 255); constexpr Color color = Color::from_rgba(128, 64, 32, 255);
EXPECT_FLOAT_EQ(color.x, 128.0f / 255.0f); EXPECT_FLOAT_EQ(color.x, 128.0f / 255.0f);
@@ -50,7 +50,7 @@ TEST_F(UnitTestColor, FromRGBA)
EXPECT_FLOAT_EQ(color.w, 1.0f); EXPECT_FLOAT_EQ(color.w, 1.0f);
} }
TEST_F(UnitTestColor, FromHSV) TEST_F(unit_test_color, FromHSV)
{ {
constexpr Color color = Color::from_hsv(0.0f, 1.0f, 1.0f); // Red in HSV constexpr Color color = Color::from_hsv(0.0f, 1.0f, 1.0f); // Red in HSV
EXPECT_FLOAT_EQ(color.x, 1.0f); EXPECT_FLOAT_EQ(color.x, 1.0f);
@@ -60,7 +60,7 @@ TEST_F(UnitTestColor, FromHSV)
} }
// Test HSV conversion // Test HSV conversion
TEST_F(UnitTestColor, ToHSV) TEST_F(unit_test_color, ToHSV)
{ {
Hsv hsv = color1.to_hsv(); // Red color Hsv hsv = color1.to_hsv(); // Red color
EXPECT_FLOAT_EQ(hsv.hue, 0.0f); EXPECT_FLOAT_EQ(hsv.hue, 0.0f);
@@ -69,7 +69,7 @@ TEST_F(UnitTestColor, ToHSV)
} }
// Test color blending // Test color blending
TEST_F(UnitTestColor, Blend) TEST_F(unit_test_color, Blend)
{ {
Color blended = color1.blend(color2, 0.5f); Color blended = color1.blend(color2, 0.5f);
EXPECT_FLOAT_EQ(blended.x, 0.5f); EXPECT_FLOAT_EQ(blended.x, 0.5f);
@@ -79,7 +79,7 @@ TEST_F(UnitTestColor, Blend)
} }
// Test predefined colors // Test predefined colors
TEST_F(UnitTestColor, PredefinedColors) TEST_F(unit_test_color, PredefinedColors)
{ {
constexpr Color red = Color::red(); constexpr Color red = Color::red();
constexpr Color green = Color::green(); constexpr Color green = Color::green();
@@ -102,7 +102,7 @@ TEST_F(UnitTestColor, PredefinedColors)
} }
// Test non-member function: Blend for Vector3 // Test non-member function: Blend for Vector3
TEST_F(UnitTestColor, BlendVector3) TEST_F(unit_test_color, BlendVector3)
{ {
constexpr Color v1(1.0f, 0.0f, 0.0f, 1.f); // Red constexpr Color v1(1.0f, 0.0f, 0.0f, 1.f); // Red
constexpr Color v2(0.0f, 1.0f, 0.0f, 1.f); // Green constexpr Color v2(0.0f, 1.0f, 0.0f, 1.f); // Green

View File

@@ -31,10 +31,10 @@ namespace
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
// Fixture with one canonical rightangled triangle in the XY plane. // Fixture with one canonical rightangled triangle in the XY plane.
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
class LineTracerFixture : public ::testing::Test class lline_tracer_fixture : public ::testing::Test
{ {
protected: protected:
LineTracerFixture() : lline_tracer_fixture() :
triangle({0.f, 0.f, 0.f}, {1.f, 0.f, 0.f}, {0.f, 1.f, 0.f}) triangle({0.f, 0.f, 0.f}, {1.f, 0.f, 0.f}, {0.f, 1.f, 0.f})
{ {
} }
@@ -51,7 +51,7 @@ namespace
bool expected_clear; // true => segment does NOT hit the triangle bool expected_clear; // true => segment does NOT hit the triangle
}; };
class CanTraceLineParam : public LineTracerFixture, class CanTraceLineParam : public lline_tracer_fixture,
public ::testing::WithParamInterface<TraceCase> public ::testing::WithParamInterface<TraceCase>
{ {
}; };
@@ -79,7 +79,7 @@ namespace
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
// Validate that the reported hit point is correct for a genuine intersection. // Validate that the reported hit point is correct for a genuine intersection.
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
TEST_F(LineTracerFixture, HitPointCorrect) TEST_F(lline_tracer_fixture, HitPointCorrect)
{ {
constexpr Ray ray{{0.3f, 0.3f, -1.f}, {0.3f, 0.3f, 1.f}}; constexpr Ray ray{{0.3f, 0.3f, -1.f}, {0.3f, 0.3f, 1.f}};
constexpr Vec3 expected{0.3f, 0.3f, 0.f}; constexpr Vec3 expected{0.3f, 0.3f, 0.f};
@@ -92,7 +92,7 @@ namespace
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
// Triangle far beyond the ray should not block. // Triangle far beyond the ray should not block.
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
TEST_F(LineTracerFixture, DistantTriangleClear) TEST_F(lline_tracer_fixture, DistantTriangleClear)
{ {
constexpr Ray short_ray{{0.f, 0.f, 0.f}, {0.f, 0.f, 1.f}}; constexpr Ray short_ray{{0.f, 0.f, 0.f}, {0.f, 0.f, 1.f}};
constexpr Triangle<Vec3> distant{{1000.f, 1000.f, 1000.f}, constexpr Triangle<Vec3> distant{{1000.f, 1000.f, 1000.f},
@@ -102,7 +102,7 @@ namespace
EXPECT_TRUE(LineTracer::can_trace_line(short_ray, distant)); EXPECT_TRUE(LineTracer::can_trace_line(short_ray, distant));
} }
TEST(LineTracerTraceRayEdge, CantHit) TEST(unit_test_unity_engine, CantHit)
{ {
constexpr omath::Triangle<Vector3<float>> triangle{{2, 0, 0}, {2, 2, 0}, {2, 2, 2}}; constexpr omath::Triangle<Vector3<float>> triangle{{2, 0, 0}, {2, 2, 0}, {2, 2, 2}};
@@ -110,7 +110,7 @@ namespace
EXPECT_TRUE(omath::collision::LineTracer::can_trace_line(ray, triangle)); EXPECT_TRUE(omath::collision::LineTracer::can_trace_line(ray, triangle));
} }
TEST(LineTracerTraceRayEdge, CanHit) TEST(unit_test_unity_engine, CanHit)
{ {
constexpr omath::Triangle<Vector3<float>> triangle{{2, 0, 0}, {2, 2, 0}, {2, 2, 2}}; constexpr omath::Triangle<Vector3<float>> triangle{{2, 0, 0}, {2, 2, 0}, {2, 2, 2}};

View File

@@ -5,7 +5,7 @@
using namespace omath; using namespace omath;
class UnitTestMat : public ::testing::Test class unit_test_mat : public ::testing::Test
{ {
protected: protected:
Mat<2, 2> m1; Mat<2, 2> m1;
@@ -19,7 +19,7 @@ protected:
}; };
// Test constructors // Test constructors
TEST_F(UnitTestMat, Constructor_Default) TEST_F(unit_test_mat, Constructor_Default)
{ {
Mat<3, 3> m; Mat<3, 3> m;
EXPECT_EQ(m.row_count(), 3); EXPECT_EQ(m.row_count(), 3);
@@ -29,7 +29,7 @@ TEST_F(UnitTestMat, Constructor_Default)
EXPECT_FLOAT_EQ(m.at(i, j), 0.0f); EXPECT_FLOAT_EQ(m.at(i, j), 0.0f);
} }
TEST_F(UnitTestMat, Constructor_InitializerList) TEST_F(unit_test_mat, Constructor_InitializerList)
{ {
constexpr Mat<2, 2> m{{1.0f, 2.0f}, {3.0f, 4.0f}}; constexpr Mat<2, 2> m{{1.0f, 2.0f}, {3.0f, 4.0f}};
EXPECT_EQ(m.row_count(), 2); EXPECT_EQ(m.row_count(), 2);
@@ -40,7 +40,7 @@ TEST_F(UnitTestMat, Constructor_InitializerList)
EXPECT_FLOAT_EQ(m.at(1, 1), 4.0f); EXPECT_FLOAT_EQ(m.at(1, 1), 4.0f);
} }
TEST_F(UnitTestMat, Operator_SquareBrackets) TEST_F(unit_test_mat, Operator_SquareBrackets)
{ {
EXPECT_EQ((m2[0, 0]), 1.0f); EXPECT_EQ((m2[0, 0]), 1.0f);
EXPECT_EQ((m2[0, 1]), 2.0f); EXPECT_EQ((m2[0, 1]), 2.0f);
@@ -48,7 +48,7 @@ TEST_F(UnitTestMat, Operator_SquareBrackets)
EXPECT_EQ((m2[1, 1]), 4.0f); EXPECT_EQ((m2[1, 1]), 4.0f);
} }
TEST_F(UnitTestMat, Constructor_Copy) TEST_F(unit_test_mat, Constructor_Copy)
{ {
Mat<2, 2> m3 = m2; Mat<2, 2> m3 = m2;
EXPECT_EQ(m3.row_count(), m2.row_count()); EXPECT_EQ(m3.row_count(), m2.row_count());
@@ -57,7 +57,7 @@ TEST_F(UnitTestMat, Constructor_Copy)
EXPECT_FLOAT_EQ(m3.at(1, 1), m2.at(1, 1)); EXPECT_FLOAT_EQ(m3.at(1, 1), m2.at(1, 1));
} }
TEST_F(UnitTestMat, Constructor_Move) TEST_F(unit_test_mat, Constructor_Move)
{ {
Mat<2, 2> m3 = std::move(m2); Mat<2, 2> m3 = std::move(m2);
EXPECT_EQ(m3.row_count(), 2); EXPECT_EQ(m3.row_count(), 2);
@@ -68,7 +68,7 @@ TEST_F(UnitTestMat, Constructor_Move)
} }
// Test matrix operations // Test matrix operations
TEST_F(UnitTestMat, Operator_Multiplication_Matrix) TEST_F(unit_test_mat, Operator_Multiplication_Matrix)
{ {
Mat<2, 2> m3 = m2 * m2; Mat<2, 2> m3 = m2 * m2;
EXPECT_EQ(m3.row_count(), 2); EXPECT_EQ(m3.row_count(), 2);
@@ -79,14 +79,14 @@ TEST_F(UnitTestMat, Operator_Multiplication_Matrix)
EXPECT_FLOAT_EQ(m3.at(1, 1), 22.0f); EXPECT_FLOAT_EQ(m3.at(1, 1), 22.0f);
} }
TEST_F(UnitTestMat, Operator_Multiplication_Scalar) TEST_F(unit_test_mat, Operator_Multiplication_Scalar)
{ {
Mat<2, 2> m3 = m2 * 2.0f; Mat<2, 2> m3 = m2 * 2.0f;
EXPECT_FLOAT_EQ(m3.at(0, 0), 2.0f); EXPECT_FLOAT_EQ(m3.at(0, 0), 2.0f);
EXPECT_FLOAT_EQ(m3.at(1, 1), 8.0f); EXPECT_FLOAT_EQ(m3.at(1, 1), 8.0f);
} }
TEST_F(UnitTestMat, Operator_Division_Scalar) TEST_F(unit_test_mat, Operator_Division_Scalar)
{ {
Mat<2, 2> m3 = m2 / 2.0f; Mat<2, 2> m3 = m2 / 2.0f;
EXPECT_FLOAT_EQ(m3.at(0, 0), 0.5f); EXPECT_FLOAT_EQ(m3.at(0, 0), 0.5f);
@@ -94,7 +94,7 @@ TEST_F(UnitTestMat, Operator_Division_Scalar)
} }
// Test matrix functions // Test matrix functions
TEST_F(UnitTestMat, Transpose) TEST_F(unit_test_mat, Transpose)
{ {
Mat<2, 2> m3 = m2.transposed(); Mat<2, 2> m3 = m2.transposed();
EXPECT_FLOAT_EQ(m3.at(0, 0), m2.at(0, 0)); EXPECT_FLOAT_EQ(m3.at(0, 0), m2.at(0, 0));
@@ -103,19 +103,19 @@ TEST_F(UnitTestMat, Transpose)
EXPECT_FLOAT_EQ(m3.at(1, 1), m2.at(1, 1)); EXPECT_FLOAT_EQ(m3.at(1, 1), m2.at(1, 1));
} }
TEST_F(UnitTestMat, Determinant) TEST_F(unit_test_mat, Determinant)
{ {
const float det = m2.determinant(); const float det = m2.determinant();
EXPECT_FLOAT_EQ(det, -2.0f); EXPECT_FLOAT_EQ(det, -2.0f);
} }
TEST_F(UnitTestMat, Sum) TEST_F(unit_test_mat, Sum)
{ {
const float sum = m2.sum(); const float sum = m2.sum();
EXPECT_FLOAT_EQ(sum, 10.0f); EXPECT_FLOAT_EQ(sum, 10.0f);
} }
TEST_F(UnitTestMat, Clear) TEST_F(unit_test_mat, Clear)
{ {
m2.clear(); m2.clear();
for (size_t i = 0; i < m2.row_count(); ++i) for (size_t i = 0; i < m2.row_count(); ++i)
@@ -123,7 +123,7 @@ TEST_F(UnitTestMat, Clear)
EXPECT_FLOAT_EQ(m2.at(i, j), 0.0f); EXPECT_FLOAT_EQ(m2.at(i, j), 0.0f);
} }
TEST_F(UnitTestMat, ToString) TEST_F(unit_test_mat, ToString)
{ {
const std::string str = m2.to_string(); const std::string str = m2.to_string();
EXPECT_FALSE(str.empty()); EXPECT_FALSE(str.empty());
@@ -131,7 +131,7 @@ TEST_F(UnitTestMat, ToString)
} }
// Test assignment operators // Test assignment operators
TEST_F(UnitTestMat, AssignmentOperator_Copy) TEST_F(unit_test_mat, AssignmentOperator_Copy)
{ {
Mat<2, 2> m3; Mat<2, 2> m3;
m3 = m2; m3 = m2;
@@ -140,7 +140,7 @@ TEST_F(UnitTestMat, AssignmentOperator_Copy)
EXPECT_FLOAT_EQ(m3.at(0, 0), m2.at(0, 0)); EXPECT_FLOAT_EQ(m3.at(0, 0), m2.at(0, 0));
} }
TEST_F(UnitTestMat, AssignmentOperator_Move) TEST_F(unit_test_mat, AssignmentOperator_Move)
{ {
Mat<2, 2> m3; Mat<2, 2> m3;
m3 = std::move(m2); m3 = std::move(m2);
@@ -152,7 +152,7 @@ TEST_F(UnitTestMat, AssignmentOperator_Move)
} }
// Test static methods // Test static methods
TEST_F(UnitTestMat, StaticMethod_ToScreenMat) TEST_F(unit_test_mat, StaticMethod_ToScreenMat)
{ {
Mat<4, 4> screenMat = Mat<4, 4>::to_screen_mat(800.0f, 600.0f); Mat<4, 4> screenMat = Mat<4, 4>::to_screen_mat(800.0f, 600.0f);
EXPECT_FLOAT_EQ(screenMat.at(0, 0), 400.0f); EXPECT_FLOAT_EQ(screenMat.at(0, 0), 400.0f);
@@ -164,7 +164,7 @@ TEST_F(UnitTestMat, StaticMethod_ToScreenMat)
// Test exception handling in At() method // Test exception handling in At() method
TEST_F(UnitTestMat, Method_At_OutOfRange) TEST_F(unit_test_mat, Method_At_OutOfRange)
{ {
#if !defined(NDEBUG) && defined(OMATH_SUPRESS_SAFETY_CHECKS) #if !defined(NDEBUG) && defined(OMATH_SUPRESS_SAFETY_CHECKS)
EXPECT_THROW(std::ignore = m2.At(2, 0), std::out_of_range); EXPECT_THROW(std::ignore = m2.At(2, 0), std::out_of_range);