From ee7a26362f2a8c52d21704f3b6ed4b70a613d881 Mon Sep 17 00:00:00 2001 From: "Rafael G. Martins" Date: Thu, 23 May 2024 02:31:28 +0200 Subject: make: introduce blog_prefix setting --- tests/blogc-make/check_atom.c | 108 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 108 insertions(+) (limited to 'tests/blogc-make/check_atom.c') diff --git a/tests/blogc-make/check_atom.c b/tests/blogc-make/check_atom.c index 125ca85..15ef510 100644 --- a/tests/blogc-make/check_atom.c +++ b/tests/blogc-make/check_atom.c @@ -224,6 +224,112 @@ test_atom_generate_dir(void **state) } +static void +test_atom_generate_blog_prefix_file(void **state) +{ + bm_settings_t *settings = bc_malloc(sizeof(bm_settings_t)); + settings->settings = bc_trie_new(free); + bc_trie_insert(settings->settings, "atom_prefix", bc_strdup("atom")); + bc_trie_insert(settings->settings, "atom_ext", bc_strdup(".xml")); + bc_trie_insert(settings->settings, "post_prefix", bc_strdup("post")); + bc_trie_insert(settings->settings, "html_ext", bc_strdup(".html")); + bc_trie_insert(settings->settings, "blog_prefix", bc_strdup("blog")); + + char *cmp = bm_atom_generate(settings); + + assert_non_null(cmp); + + assert_string_equal(cmp, + "\n" + "\n" + " {{ SITE_TITLE }}{% ifdef FILTER_TAG %} - " + "{{ FILTER_TAG }}{% endif %}\n" + " {{ BASE_DOMAIN }}{{ BASE_URL }}/blog/atom{% ifdef FILTER_TAG %}/{{ FILTER_TAG }}" + "{% endif %}.xml\n" + " {{ DATE_FIRST_FORMATTED }}\n" + " \n" + " \n" + " \n" + " {{ AUTHOR_NAME }}\n" + " {{ AUTHOR_EMAIL }}\n" + " \n" + " {{ SITE_TAGLINE }}\n" + " {%- block listing %}\n" + " \n" + " {{ TITLE }}\n" + " {{ BASE_DOMAIN }}{{ BASE_URL }}/blog/post/{{ FILENAME }}.html\n" + " {{ DATE_FORMATTED }}\n" + " {{ DATE_FORMATTED }}\n" + " \n" + " \n" + " {{ AUTHOR_NAME }}\n" + " {{ AUTHOR_EMAIL }}\n" + " \n" + " \n" + " \n" + " {%- endblock %}\n" + "\n"); + + free(cmp); + bc_trie_free(settings->settings); + free(settings); +} + + +static void +test_atom_generate_blog_prefix_dir(void **state) +{ + bm_settings_t *settings = bc_malloc(sizeof(bm_settings_t)); + settings->settings = bc_trie_new(free); + bc_trie_insert(settings->settings, "atom_prefix", bc_strdup("atom")); + bc_trie_insert(settings->settings, "atom_ext", bc_strdup("/index.xml")); + bc_trie_insert(settings->settings, "post_prefix", bc_strdup("post")); + bc_trie_insert(settings->settings, "html_ext", bc_strdup("/index.html")); + bc_trie_insert(settings->settings, "blog_prefix", bc_strdup("blog")); + + char *cmp = bm_atom_generate(settings); + + assert_non_null(cmp); + + assert_string_equal(cmp, + "\n" + "\n" + " {{ SITE_TITLE }}{% ifdef FILTER_TAG %} - " + "{{ FILTER_TAG }}{% endif %}\n" + " {{ BASE_DOMAIN }}{{ BASE_URL }}/blog/atom{% ifdef FILTER_TAG %}/{{ FILTER_TAG }}" + "{% endif %}/index.xml\n" + " {{ DATE_FIRST_FORMATTED }}\n" + " \n" + " \n" + " \n" + " {{ AUTHOR_NAME }}\n" + " {{ AUTHOR_EMAIL }}\n" + " \n" + " {{ SITE_TAGLINE }}\n" + " {%- block listing %}\n" + " \n" + " {{ TITLE }}\n" + " {{ BASE_DOMAIN }}{{ BASE_URL }}/blog/post/{{ FILENAME }}/index.html\n" + " {{ DATE_FORMATTED }}\n" + " {{ DATE_FORMATTED }}\n" + " \n" + " \n" + " {{ AUTHOR_NAME }}\n" + " {{ AUTHOR_EMAIL }}\n" + " \n" + " \n" + " \n" + " {%- endblock %}\n" + "\n"); + + free(cmp); + bc_trie_free(settings->settings); + free(settings); +} + + static void test_atom_empty_file(void **state) { @@ -536,6 +642,8 @@ main(void) cmocka_unit_test(test_atom_generate_empty_dir), cmocka_unit_test(test_atom_generate_file), cmocka_unit_test(test_atom_generate_dir), + cmocka_unit_test(test_atom_generate_blog_prefix_file), + cmocka_unit_test(test_atom_generate_blog_prefix_dir), cmocka_unit_test(test_atom_empty_file), cmocka_unit_test(test_atom_empty_dir), cmocka_unit_test(test_atom_file), -- cgit v1.2.3-18-g5258