aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorTreeston <treeston.mmoc@gmail.com>2020-08-30 22:40:33 +0200
committerShauren <shauren.trinity@gmail.com>2022-02-04 21:33:27 +0100
commit627ff1587d5836534e46dff8afd6fa9016356fb1 (patch)
treea7d6cf4b2518a2945e38199c6637dd34b8260e82 /tests
parent1a536365b5095b9b891a51fff13ef8c2ec3992c1 (diff)
UnitTests: Add basic hyperlink unit test
(cherry picked from commit 86e6438008cf5179a2ff3b22c2e0459ee7aaa20c)
Diffstat (limited to 'tests')
-rw-r--r--tests/game/Hyperlinks.cpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/game/Hyperlinks.cpp b/tests/game/Hyperlinks.cpp
new file mode 100644
index 00000000000..ff9062af905
--- /dev/null
+++ b/tests/game/Hyperlinks.cpp
@@ -0,0 +1,39 @@
+/*
+ * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "tc_catch2.h"
+
+#include "Hyperlinks.h"
+#include "ChatCommand.h"
+
+using namespace std::string_view_literals;
+using namespace Trinity::Hyperlinks;
+
+TEST_CASE("Basic link structure", "[Hyperlinks]")
+{
+ HyperlinkInfo info = ParseSingleHyperlink("|c12345678|Htag:data1:data2:data3:data4:data5|h[Text]|h|rtail");
+ REQUIRE(info.ok);
+ REQUIRE(info.color == 0x12345678);
+ REQUIRE(info.color.a == 0x12);
+ REQUIRE(info.color.r == 0x34);
+ REQUIRE(info.color.g == 0x56);
+ REQUIRE(info.color.b == 0x78);
+ REQUIRE(info.tag == "tag");
+ REQUIRE(info.data == "data1:data2:data3:data4:data5");
+ REQUIRE(info.text == "Text");
+ REQUIRE(info.tail == "tail");
+}