Tech ENABLE_COLOR_CLASSES - 1st installment -> Introduction of classes ColorRGB and ColorRGBA to unify color data definition and manipulation
This commit is contained in:
parent
48098fbaff
commit
cd4094743e
53 changed files with 1810 additions and 60 deletions
|
@ -6,6 +6,7 @@ add_executable(${_TEST_NAME}_tests
|
|||
test_aabbindirect.cpp
|
||||
test_clipper_offset.cpp
|
||||
test_clipper_utils.cpp
|
||||
test_color.cpp
|
||||
test_config.cpp
|
||||
test_elephant_foot_compensation.cpp
|
||||
test_geometry.cpp
|
||||
|
|
41
tests/libslic3r/test_color.cpp
Normal file
41
tests/libslic3r/test_color.cpp
Normal file
|
@ -0,0 +1,41 @@
|
|||
#include <catch2/catch.hpp>
|
||||
#include "libslic3r/libslic3r.h"
|
||||
|
||||
#if ENABLE_COLOR_CLASSES
|
||||
|
||||
#include "libslic3r/Color.hpp"
|
||||
|
||||
using namespace Slic3r;
|
||||
|
||||
SCENARIO("Color encoding/decoding cycle", "[Color]") {
|
||||
GIVEN("Color") {
|
||||
const ColorRGB src_rgb(unsigned char(255), unsigned char(127), unsigned char(63));
|
||||
WHEN("apply encode/decode cycle") {
|
||||
const std::string encoded = encode_color(src_rgb);
|
||||
ColorRGB res_rgb;
|
||||
decode_color(encoded, res_rgb);
|
||||
const bool ret = res_rgb.r_uchar() == src_rgb.r_uchar() && res_rgb.g_uchar() == src_rgb.g_uchar() && res_rgb.b_uchar() == src_rgb.b_uchar();
|
||||
THEN("result matches source") {
|
||||
REQUIRE(ret);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
SCENARIO("Color picking encoding/decoding cycle", "[Color]") {
|
||||
GIVEN("Picking color") {
|
||||
const ColorRGB src_rgb(unsigned char(255), unsigned char(127), unsigned char(63));
|
||||
WHEN("apply encode/decode cycle") {
|
||||
const unsigned int encoded = picking_encode(src_rgb.r_uchar(), src_rgb.g_uchar(), src_rgb.b_uchar());
|
||||
const ColorRGBA res_rgba = picking_decode(encoded);
|
||||
const bool ret = res_rgba.r_uchar() == src_rgb.r_uchar() && res_rgba.g_uchar() == src_rgb.g_uchar() && res_rgba.b_uchar() == src_rgb.b_uchar();
|
||||
THEN("result matches source") {
|
||||
REQUIRE(ret);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif // ENABLE_COLOR_CLASSES
|
||||
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue