summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortastytea2020-01-16 18:16:02 +0100
committertastytea2020-01-16 18:16:02 +0100
commit18c0b41a20820a7d09c124d1224bebccd8cc0688 (patch)
tree80a5bbeb8830f8881006ce6dd08bfe3f276e0fa5
parent8cfba1f16b060912e69b73f9b211c311f592a467 (diff)
downloadmastodonpp-18c0b41a20820a7d09c124d1224bebccd8cc0688.tar
mastodonpp-18c0b41a20820a7d09c124d1224bebccd8cc0688.tar.gz
mastodonpp-18c0b41a20820a7d09c124d1224bebccd8cc0688.zip
Add test for unescape_html().
-rw-r--r--tests/test_html_unescape.cpp54
1 files changed, 54 insertions, 0 deletions
diff --git a/tests/test_html_unescape.cpp b/tests/test_html_unescape.cpp
new file mode 100644
index 0000000..0f80ec7
--- /dev/null
+++ b/tests/test_html_unescape.cpp
@@ -0,0 +1,54 @@
+/* This file is part of mastodonpp.
+ * Copyright © 2020 tastytea <tastytea@tastytea.de>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, version 3.
+ *
+ * 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 Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "helpers.hpp"
+
+#include <catch.hpp>
+
+#include <exception>
+#include <string>
+
+namespace mastodonpp
+{
+
+using std::string;
+
+SCENARIO ("mastodonpp::html_unescape()")
+{
+ bool exception = false;
+
+ WHEN ("html_unescape() is called.")
+ {
+ string result;
+ try
+ {
+ result = unescape_html("2&euro; = 2&#8364; = 2&#x20ac;");
+ }
+ catch (const std::exception &e)
+ {
+ exception = true;
+ }
+
+ THEN ("No exception is thrown")
+ AND_THEN("Result is as expected.")
+ {
+ REQUIRE_FALSE(exception);
+ REQUIRE(result == "2€ = 2€ = 2€");
+ }
+ }
+}
+
+} // namespace mastodonpp