aboutsummaryrefslogtreecommitdiff
path: root/tests/game/ChatCommand.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/game/ChatCommand.cpp')
-rw-r--r--tests/game/ChatCommand.cpp27
1 files changed, 22 insertions, 5 deletions
diff --git a/tests/game/ChatCommand.cpp b/tests/game/ChatCommand.cpp
index f484b5806c5..2f73b579f84 100644
--- a/tests/game/ChatCommand.cpp
+++ b/tests/game/ChatCommand.cpp
@@ -48,13 +48,30 @@ TEST_CASE("Command argument parsing", "[ChatCommand]")
TestChatCommand("true", [](ChatHandler*, uint32) { return true; }, false);
}
- SECTION("std::vector<uint8>")
+ SECTION("Floating point argument")
{
- TestChatCommand("1 2 3 4 5 6 7 8 9 10", [](ChatHandler*, std::vector<uint8> v)
+ TestChatCommand("0.5", [](ChatHandler*, float f)
{
- REQUIRE(v.size() == 10);
- for (size_t i = 0; i < 10; ++i)
- REQUIRE(v[i] == (i + 1));
+ REQUIRE(f == 0.5);
+ return true;
+ });
+ TestChatCommand("true", [](ChatHandler*, float) { return true; }, false);
+ }
+
+ SECTION("std::vector<uint16>")
+ {
+ TestChatCommand("1 2 3 4 5 6 7 8 9 10", [](ChatHandler*, std::vector<uint16> v)
+ {
+ REQUIRE(v == std::vector<uint16>{ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 });
+ return true;
+ });
+ }
+
+ SECTION("std::array<uint16>")
+ {
+ TestChatCommand("1 2 3 4 5 6 7 8 9 10", [](ChatHandler*, std::array<uint16, 10> v)
+ {
+ REQUIRE(v == std::array<uint16, 10>{ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 });
return true;
});
}