From c645ba31062082f1c6ecfe460e73486be131b9f8 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Thu, 9 Mar 2017 14:25:33 -0500 Subject: [PATCH] Add tests for markup functions --- test/markup.c | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++ test/test.c | 2 ++ 2 files changed, 59 insertions(+) create mode 100644 test/markup.c diff --git a/test/markup.c b/test/markup.c new file mode 100644 index 0000000..cbd8bad --- /dev/null +++ b/test/markup.c @@ -0,0 +1,57 @@ +#include "greatest.h" + +#include +#include + +#include "src/markup.h" + +TEST test_markup_strip(void) +{ + char *ptr; + + ASSERT_STR_EQ(""", (ptr=markup_strip(g_strdup("&quot;")))); + g_free(ptr); + ASSERT_STR_EQ("'", (ptr=markup_strip(g_strdup("&apos;")))); + g_free(ptr); + ASSERT_STR_EQ("<", (ptr=markup_strip(g_strdup("&lt;")))); + g_free(ptr); + ASSERT_STR_EQ(">", (ptr=markup_strip(g_strdup("&gt;")))); + g_free(ptr); + ASSERT_STR_EQ("&", (ptr=markup_strip(g_strdup("&amp;")))); + g_free(ptr); + ASSERT_STR_EQ(">A ", (ptr=markup_strip(g_strdup(">A foo
bar\nbaz"), MARKUP_NO))); + g_free(ptr); + ASSERT_STR_EQ("foo\nbar\nbaz", (ptr=markup_transform(g_strdup("foo
bar\nbaz"), MARKUP_STRIP))); + g_free(ptr); + ASSERT_STR_EQ("foo\nbar\nbaz", (ptr=markup_transform(g_strdup("foo
bar\nbaz"), MARKUP_FULL))); + g_free(ptr); + + settings.ignore_newline = true; + ASSERT_STR_EQ("<i>foo</i><br>bar baz", (ptr=markup_transform(g_strdup("foo
bar\nbaz"), MARKUP_NO))); + g_free(ptr); + ASSERT_STR_EQ("foo bar baz", (ptr=markup_transform(g_strdup("foo
bar\nbaz"), MARKUP_STRIP))); + g_free(ptr); + ASSERT_STR_EQ("foo bar baz", (ptr=markup_transform(g_strdup("foo
bar\nbaz"), MARKUP_FULL))); + g_free(ptr); + + PASS(); +} + +SUITE(suite_markup) +{ + RUN_TEST(test_markup_strip); + RUN_TEST(test_markup_transform); +} + +/* vim: set tabstop=8 shiftwidth=8 expandtab textwidth=0: */ diff --git a/test/test.c b/test/test.c index 417ba19..90959a6 100644 --- a/test/test.c +++ b/test/test.c @@ -3,6 +3,7 @@ SUITE_EXTERN(suite_utils); SUITE_EXTERN(suite_option_parser); SUITE_EXTERN(suite_notification); +SUITE_EXTERN(suite_markup); GREATEST_MAIN_DEFS(); @@ -11,6 +12,7 @@ int main(int argc, char *argv[]) { RUN_SUITE(suite_utils); RUN_SUITE(suite_option_parser); RUN_SUITE(suite_notification); + RUN_SUITE(suite_markup); GREATEST_MAIN_END(); } /* vim: set tabstop=8 shiftwidth=8 expandtab textwidth=0: */