Merge branch 'master' into jgrpp
# Conflicts: # .github/workflows/ci-build.yml # .github/workflows/codeql.yml # .github/workflows/commit-checker.yml # .github/workflows/release-linux-legacy.yml # .github/workflows/release-linux.yml # .github/workflows/release-macos.yml # .github/workflows/release-windows-store.yml # .github/workflows/release-windows.yml # .github/workflows/upload-cdn.yml # .github/workflows/upload-gog.yml # .github/workflows/upload-steam.yml # src/console_cmds.cpp # src/core/math_func.hpp # src/fios.cpp # src/fios.h # src/intro_gui.cpp # src/network/network_server.cpp # src/openttd.cpp # src/settings.cpp # src/settings_gui.cpp # src/settings_internal.h # src/settings_table.cpp # src/settings_type.h # src/table/settings.h.preamble # src/table/settings/company_settings.ini # src/table/settings/currency_settings.ini # src/table/settings/difficulty_settings.ini # src/table/settings/economy_settings.ini # src/table/settings/game_settings.ini # src/table/settings/gui_settings.ini # src/table/settings/linkgraph_settings.ini # src/table/settings/locale_settings.ini # src/table/settings/misc_settings.ini # src/table/settings/multimedia_settings.ini # src/table/settings/network_private_settings.ini # src/table/settings/network_settings.ini # src/table/settings/news_display_settings.ini # src/table/settings/old_gameopt_settings.ini # src/table/settings/pathfinding_settings.ini # src/table/settings/script_settings.ini # src/table/settings/win32_settings.ini # src/table/settings/window_settings.ini # src/table/settings/world_settings.ini # src/viewport.cpp # src/viewport_func.h # src/window.cpp
This commit is contained in:
@@ -343,3 +343,45 @@ TEST_CASE("FormatArrayAsHex")
|
||||
CHECK(FormatArrayAsHex(std::array<byte, 1>{0x12}) == "12");
|
||||
CHECK(FormatArrayAsHex(std::array<byte, 4>{0x13, 0x38, 0x42, 0xAF}) == "133842af");
|
||||
}
|
||||
|
||||
TEST_CASE("ConvertHexToBytes")
|
||||
{
|
||||
CHECK(ConvertHexToBytes("", {}) == true);
|
||||
CHECK(ConvertHexToBytes("1", {}) == false);
|
||||
CHECK(ConvertHexToBytes("12", {}) == false);
|
||||
|
||||
std::array<uint8_t, 1> bytes1;
|
||||
CHECK(ConvertHexToBytes("1", bytes1) == false);
|
||||
CHECK(ConvertHexToBytes("12", bytes1) == true);
|
||||
CHECK(bytes1[0] == 0x12);
|
||||
CHECK(ConvertHexToBytes("123", bytes1) == false);
|
||||
CHECK(ConvertHexToBytes("1g", bytes1) == false);
|
||||
CHECK(ConvertHexToBytes("g1", bytes1) == false);
|
||||
|
||||
std::array<uint8_t, 2> bytes2;
|
||||
CHECK(ConvertHexToBytes("12", bytes2) == false);
|
||||
CHECK(ConvertHexToBytes("1234", bytes2) == true);
|
||||
CHECK(bytes2[0] == 0x12);
|
||||
CHECK(bytes2[1] == 0x34);
|
||||
|
||||
std::array<uint8_t, 8> bytes3;
|
||||
CHECK(ConvertHexToBytes("123456789abcdef0", bytes3) == true);
|
||||
CHECK(bytes3[0] == 0x12);
|
||||
CHECK(bytes3[1] == 0x34);
|
||||
CHECK(bytes3[2] == 0x56);
|
||||
CHECK(bytes3[3] == 0x78);
|
||||
CHECK(bytes3[4] == 0x9a);
|
||||
CHECK(bytes3[5] == 0xbc);
|
||||
CHECK(bytes3[6] == 0xde);
|
||||
CHECK(bytes3[7] == 0xf0);
|
||||
|
||||
CHECK(ConvertHexToBytes("123456789ABCDEF0", bytes3) == true);
|
||||
CHECK(bytes3[0] == 0x12);
|
||||
CHECK(bytes3[1] == 0x34);
|
||||
CHECK(bytes3[2] == 0x56);
|
||||
CHECK(bytes3[3] == 0x78);
|
||||
CHECK(bytes3[4] == 0x9a);
|
||||
CHECK(bytes3[5] == 0xbc);
|
||||
CHECK(bytes3[6] == 0xde);
|
||||
CHECK(bytes3[7] == 0xf0);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user