From 508305701632b8218c3b1695040e1f98c435fd88 Mon Sep 17 00:00:00 2001 From: Ioannis Tzavaras Date: Sat, 28 Mar 2026 20:28:18 +0200 Subject: tests: add unit tests for Direction helpers (#13885) * tests: add unit tests for Direction helpers * clang-format: fix leading blank line in Direction test --- tests/helpers/Direction.cpp | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 tests/helpers/Direction.cpp (limited to 'tests') diff --git a/tests/helpers/Direction.cpp b/tests/helpers/Direction.cpp new file mode 100644 index 00000000..9bf1c6f7 --- /dev/null +++ b/tests/helpers/Direction.cpp @@ -0,0 +1,40 @@ +#include + +#include + +using namespace Math; + +TEST(Helpers, directionFromCharValid) { + EXPECT_EQ(fromChar('r'), DIRECTION_RIGHT); + EXPECT_EQ(fromChar('l'), DIRECTION_LEFT); + EXPECT_EQ(fromChar('u'), DIRECTION_UP); + EXPECT_EQ(fromChar('d'), DIRECTION_DOWN); + EXPECT_EQ(fromChar('t'), DIRECTION_UP); + EXPECT_EQ(fromChar('b'), DIRECTION_DOWN); +} + +TEST(Helpers, directionFromCharInvalid) { + EXPECT_EQ(fromChar('x'), DIRECTION_DEFAULT); + EXPECT_EQ(fromChar('z'), DIRECTION_DEFAULT); + EXPECT_EQ(fromChar('0'), DIRECTION_DEFAULT); + EXPECT_EQ(fromChar(' '), DIRECTION_DEFAULT); + EXPECT_EQ(fromChar('\0'), DIRECTION_DEFAULT); +} + +TEST(Helpers, directionToString) { + EXPECT_STREQ(toString(DIRECTION_UP), "up"); + EXPECT_STREQ(toString(DIRECTION_DOWN), "down"); + EXPECT_STREQ(toString(DIRECTION_LEFT), "left"); + EXPECT_STREQ(toString(DIRECTION_RIGHT), "right"); + EXPECT_STREQ(toString(DIRECTION_DEFAULT), "default"); +} + +TEST(Helpers, directionFromCharToString) { + EXPECT_STREQ(toString(fromChar('r')), "right"); + EXPECT_STREQ(toString(fromChar('l')), "left"); + EXPECT_STREQ(toString(fromChar('u')), "up"); + EXPECT_STREQ(toString(fromChar('d')), "down"); + EXPECT_STREQ(toString(fromChar('t')), "up"); + EXPECT_STREQ(toString(fromChar('b')), "down"); + EXPECT_STREQ(toString(fromChar('x')), "default"); +} -- cgit v1.2.3