diff options
author | Rafael G. Martins <rafael@rafaelmartins.eng.br> | 2019-04-21 19:12:01 +0200 |
---|---|---|
committer | Rafael G. Martins <rafael@rafaelmartins.eng.br> | 2019-04-21 19:12:16 +0200 |
commit | 60f8be44dd876c221270a34989480936e716f5ab (patch) | |
tree | c773c6c1ffabce1dba83ce59c6e6d292d0fe9d12 | |
parent | cf95aa88595184f51da4eeb06301e436a6a5f589 (diff) | |
download | blogc-60f8be44dd876c221270a34989480936e716f5ab.tar.gz blogc-60f8be44dd876c221270a34989480936e716f5ab.tar.bz2 blogc-60f8be44dd876c221270a34989480936e716f5ab.zip |
make: removed atom_legacy_entry_id setting
-rw-r--r-- | src/blogc-make/atom.c | 19 | ||||
-rw-r--r-- | tests/blogc-make/check_atom.c | 98 |
2 files changed, 22 insertions, 95 deletions
diff --git a/src/blogc-make/atom.c b/src/blogc-make/atom.c index 58113fc..6749658 100644 --- a/src/blogc-make/atom.c +++ b/src/blogc-make/atom.c @@ -75,21 +75,11 @@ bm_atom_generate(bm_settings_t *settings) char *post_url = bm_generate_filename(NULL, post_prefix, "{{ FILENAME }}", post_ext); - char *entry_id = NULL; - if (bc_str_to_bool(bc_trie_lookup(settings->settings, "atom_legacy_entry_id"))) { - entry_id = bc_strdup_printf("%s%s/{{ FILENAME }}/", - post_prefix[0] == '\0' ? "" : "/", post_prefix); - } - else { - entry_id = bc_strdup(post_url); - } - char *rv = bc_strdup_printf(atom_template, atom_url->str, atom_url->str, - entry_id, post_url); + post_url, post_url); bc_string_free(atom_url, true); free(post_url); - free(entry_id); return rv; } @@ -101,6 +91,13 @@ bm_atom_deploy(bm_settings_t *settings, bc_error_t **err) if (settings == NULL || err == NULL || *err != NULL) return NULL; + if (NULL != bc_trie_lookup(settings->settings, "atom_legacy_entry_id")) { + *err = bc_error_new_printf(BLOGC_MAKE_ERROR_ATOM, + "'atom_legacy_entry_id' setting is not supported anymore. see " + "https://blogc.rgm.io/news/blogc-0.16.1/ for details"); + return NULL; + } + // this is not really portable char fname[] = "/tmp/blogc-make_XXXXXX"; int fd; diff --git a/tests/blogc-make/check_atom.c b/tests/blogc-make/check_atom.c index a8fe4af..94c9a37 100644 --- a/tests/blogc-make/check_atom.c +++ b/tests/blogc-make/check_atom.c @@ -491,50 +491,15 @@ test_atom_legacy_entry_id_empty(void **state) bc_error_t *err = NULL; char *rv = bm_atom_deploy(settings, &err); - assert_non_null(rv); - assert_null(err); + assert_null(rv); + assert_non_null(err); - size_t cmp_len; - char *cmp = bc_file_get_contents(rv, true, &cmp_len, &err); + assert_int_equal(err->type, BLOGC_MAKE_ERROR_ATOM); + assert_string_equal(err->msg, + "'atom_legacy_entry_id' setting is not supported anymore. see " + "https://blogc.rgm.io/news/blogc-0.16.1/ for details"); - assert_non_null(cmp); - assert_null(err); - - assert_string_equal(cmp, - "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" - "<feed xmlns=\"http://www.w3.org/2005/Atom\">\n" - " <title type=\"text\">{{ SITE_TITLE }}{% ifdef FILTER_TAG %} - " - "{{ FILTER_TAG }}{% endif %}</title>\n" - " <id>{{ BASE_DOMAIN }}{{ BASE_URL }}{% ifdef FILTER_TAG %}/{{ FILTER_TAG }}" - "{% else %}/index{% endif %}.xml</id>\n" - " <updated>{{ DATE_FIRST_FORMATTED }}</updated>\n" - " <link href=\"{{ BASE_DOMAIN }}{{ BASE_URL }}/\" />\n" - " <link href=\"{{ BASE_DOMAIN }}{{ BASE_URL }}{% ifdef FILTER_TAG %}" - "/{{ FILTER_TAG }}{% else %}/index{% endif %}.xml\" rel=\"self\" />\n" - " <author>\n" - " <name>{{ AUTHOR_NAME }}</name>\n" - " <email>{{ AUTHOR_EMAIL }}</email>\n" - " </author>\n" - " <subtitle type=\"text\">{{ SITE_TAGLINE }}</subtitle>\n" - " {% block listing %}\n" - " <entry>\n" - " <title type=\"text\">{{ TITLE }}</title>\n" - " <id>{{ BASE_DOMAIN }}{{ BASE_URL }}/{{ FILENAME }}/</id>\n" - " <updated>{{ DATE_FORMATTED }}</updated>\n" - " <published>{{ DATE_FORMATTED }}</published>\n" - " <link href=\"{{ BASE_DOMAIN }}{{ BASE_URL }}/{{ FILENAME }}.html\" />\n" - " <author>\n" - " <name>{{ AUTHOR_NAME }}</name>\n" - " <email>{{ AUTHOR_EMAIL }}</email>\n" - " </author>\n" - " <content type=\"html\"><![CDATA[{{ CONTENT }}]]></content>\n" - " </entry>\n" - " {% endblock %}\n" - "</feed>\n"); - - free(cmp); - bm_atom_destroy(rv); - free(rv); + bc_error_free(err); bc_trie_free(settings->settings); free(settings); } @@ -554,50 +519,15 @@ test_atom_legacy_entry_id(void **state) bc_error_t *err = NULL; char *rv = bm_atom_deploy(settings, &err); - assert_non_null(rv); - assert_null(err); + assert_null(rv); + assert_non_null(err); - size_t cmp_len; - char *cmp = bc_file_get_contents(rv, true, &cmp_len, &err); + assert_int_equal(err->type, BLOGC_MAKE_ERROR_ATOM); + assert_string_equal(err->msg, + "'atom_legacy_entry_id' setting is not supported anymore. see " + "https://blogc.rgm.io/news/blogc-0.16.1/ for details"); - assert_non_null(cmp); - assert_null(err); - - assert_string_equal(cmp, - "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" - "<feed xmlns=\"http://www.w3.org/2005/Atom\">\n" - " <title type=\"text\">{{ SITE_TITLE }}{% ifdef FILTER_TAG %} - " - "{{ FILTER_TAG }}{% endif %}</title>\n" - " <id>{{ BASE_DOMAIN }}{{ BASE_URL }}/atom{% ifdef FILTER_TAG %}/{{ FILTER_TAG }}" - "{% endif %}.xml</id>\n" - " <updated>{{ DATE_FIRST_FORMATTED }}</updated>\n" - " <link href=\"{{ BASE_DOMAIN }}{{ BASE_URL }}/\" />\n" - " <link href=\"{{ BASE_DOMAIN }}{{ BASE_URL }}/atom{% ifdef FILTER_TAG %}" - "/{{ FILTER_TAG }}{% endif %}.xml\" rel=\"self\" />\n" - " <author>\n" - " <name>{{ AUTHOR_NAME }}</name>\n" - " <email>{{ AUTHOR_EMAIL }}</email>\n" - " </author>\n" - " <subtitle type=\"text\">{{ SITE_TAGLINE }}</subtitle>\n" - " {% block listing %}\n" - " <entry>\n" - " <title type=\"text\">{{ TITLE }}</title>\n" - " <id>{{ BASE_DOMAIN }}{{ BASE_URL }}/post/{{ FILENAME }}/</id>\n" - " <updated>{{ DATE_FORMATTED }}</updated>\n" - " <published>{{ DATE_FORMATTED }}</published>\n" - " <link href=\"{{ BASE_DOMAIN }}{{ BASE_URL }}/post/{{ FILENAME }}.html\" />\n" - " <author>\n" - " <name>{{ AUTHOR_NAME }}</name>\n" - " <email>{{ AUTHOR_EMAIL }}</email>\n" - " </author>\n" - " <content type=\"html\"><![CDATA[{{ CONTENT }}]]></content>\n" - " </entry>\n" - " {% endblock %}\n" - "</feed>\n"); - - free(cmp); - bm_atom_destroy(rv); - free(rv); + bc_error_free(err); bc_trie_free(settings->settings); free(settings); } |