mirror of
https://github.com/SFML/CSFML.git
synced 2026-10-24 13:53:36 +02:00
Add tests for sfRenderStates
This commit is contained in:
1 parent
f6949a5a06
commit
feb431a689
2 files changed
+42
No files matched your search
@@ -49,6 +49,7 @@ add_executable(test-csfml-graphics
|
|||||||
Graphics/Color.test.cpp
|
Graphics/Color.test.cpp
|
||||||
Graphics/CoordinateType.test.cpp
|
Graphics/CoordinateType.test.cpp
|
||||||
Graphics/Rect.test.cpp
|
Graphics/Rect.test.cpp
|
||||||
|
Graphics/RenderStates.test.cpp
|
||||||
Graphics/StencilMode.test.cpp
|
Graphics/StencilMode.test.cpp
|
||||||
Graphics/Transform.test.cpp
|
Graphics/Transform.test.cpp
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -0,0 +1,41 @@
|
|||||||
|
#include <CSFML/Graphics/RenderStates.h>
|
||||||
|
|
||||||
|
#include <SFML/Graphics/RenderStates.hpp>
|
||||||
|
|
||||||
|
#include <catch2/catch_test_macros.hpp>
|
||||||
|
|
||||||
|
#include "CSFML/Graphics/CoordinateType.h"
|
||||||
|
|
||||||
|
TEST_CASE("[Graphics] sfRenderStates")
|
||||||
|
{
|
||||||
|
SECTION("Construction")
|
||||||
|
{
|
||||||
|
constexpr sfRenderStates renderStates{};
|
||||||
|
STATIC_CHECK(renderStates.blendMode.colorSrcFactor == sfBlendFactorZero);
|
||||||
|
STATIC_CHECK(renderStates.blendMode.colorDstFactor == sfBlendFactorZero);
|
||||||
|
STATIC_CHECK(renderStates.blendMode.colorEquation == sfBlendEquationAdd);
|
||||||
|
STATIC_CHECK(renderStates.blendMode.alphaSrcFactor == sfBlendFactorZero);
|
||||||
|
STATIC_CHECK(renderStates.blendMode.alphaDstFactor == sfBlendFactorZero);
|
||||||
|
STATIC_CHECK(renderStates.blendMode.alphaEquation == sfBlendEquationAdd);
|
||||||
|
STATIC_CHECK(renderStates.stencilMode.stencilComparison == sfStencilComparisonNever);
|
||||||
|
STATIC_CHECK(renderStates.stencilMode.stencilUpdateOperation == sfStencilUpdateOperationKeep);
|
||||||
|
STATIC_CHECK(renderStates.stencilMode.stencilReference.value == 0);
|
||||||
|
STATIC_CHECK(renderStates.stencilMode.stencilMask.value == 0);
|
||||||
|
STATIC_CHECK(!renderStates.stencilMode.stencilOnly);
|
||||||
|
for (const auto element : renderStates.transform.matrix)
|
||||||
|
CHECK(element == 0);
|
||||||
|
STATIC_CHECK(renderStates.coordinateType == sfCoordinateTypeNormalized);
|
||||||
|
STATIC_CHECK(renderStates.texture == nullptr);
|
||||||
|
STATIC_CHECK(renderStates.shader == nullptr);
|
||||||
|
}
|
||||||
|
|
||||||
|
SECTION("sfRenderStates_default")
|
||||||
|
{
|
||||||
|
CHECK(sfRenderStates_default.blendMode.alphaDstFactor == sfBlendAlpha.alphaDstFactor);
|
||||||
|
CHECK(sfRenderStates_default.blendMode.colorDstFactor == sfBlendAlpha.colorDstFactor);
|
||||||
|
CHECK(sfRenderStates_default.blendMode.colorEquation == sfBlendAlpha.colorEquation);
|
||||||
|
CHECK(sfRenderStates_default.blendMode.alphaSrcFactor == sfBlendAlpha.alphaSrcFactor);
|
||||||
|
CHECK(sfRenderStates_default.blendMode.alphaDstFactor == sfBlendAlpha.alphaDstFactor);
|
||||||
|
CHECK(sfRenderStates_default.blendMode.alphaEquation == sfBlendAlpha.alphaEquation);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in new issue
Block a user