From a43afc68a6116375d139ce6a84ee00b3865ebf9c Mon Sep 17 00:00:00 2001 From: Andreas Waidler Date: Fri, 24 Jun 2011 19:57:06 +0200 Subject: [PATCH] Failing on duplicate item properties. --- src/fs.c | 6 ++++++ tests_usr/item_broken.sh | 13 ++++++++++++- tests_usr/item_duplicate_date.rss | 11 +++++++++++ tests_usr/item_duplicate_description.rss | 10 ++++++++++ tests_usr/item_duplicate_link.rss | 11 +++++++++++ 5 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 tests_usr/item_duplicate_date.rss create mode 100644 tests_usr/item_duplicate_description.rss create mode 100644 tests_usr/item_duplicate_link.rss diff --git a/src/fs.c b/src/fs.c index 96c9c1b..121d461 100644 --- a/src/fs.c +++ b/src/fs.c @@ -66,6 +66,9 @@ void sanitize(char* str) void set_item_date(const char* date) { struct tm t; + + assert(!item_date); + assert(strptime(date, "%a, %d %b %Y %T %z", &t)); item_date = mktime(&t); assert(item_date != -1); @@ -73,11 +76,13 @@ void set_item_date(const char* date) void set_item_link(const char* link) { + assert(!item_link[0]); fs_buffer(item_link, link, TEXT_BUFFER_SIZE); } void set_item_desc(const char* desc) { + assert(!item_desc[0]); fs_buffer(item_desc, desc, TEXT_BUFFER_SIZE); } @@ -190,4 +195,5 @@ void item_flush() item_title[0] = 0; item_desc[0] = 0; item_link[0] = 0; + item_date = 0; } diff --git a/tests_usr/item_broken.sh b/tests_usr/item_broken.sh index 744bc62..bac510e 100755 --- a/tests_usr/item_broken.sh +++ b/tests_usr/item_broken.sh @@ -19,5 +19,16 @@ t item_exists echo "Running agg on feed containing item with duplicate titles..." agg_fail item_duplicate_title.rss -t feed_exists +t item_missing + +echo "Running agg on feed containing item with duplicate description..." +agg_fail item_duplicate_description.rss +t item_missing + +echo "Running agg on feed containing item with duplicate link..." +agg_fail item_duplicate_link.rss +t item_missing + +echo "Running agg on feed containing item with duplicate date..." +agg_fail item_duplicate_date.rss t item_missing diff --git a/tests_usr/item_duplicate_date.rss b/tests_usr/item_duplicate_date.rss new file mode 100644 index 0000000..af5e71d --- /dev/null +++ b/tests_usr/item_duplicate_date.rss @@ -0,0 +1,11 @@ + + + + feed + + item + Sat, 02 Oct 2010 22:43:23 +0200 + Sat, 02 Oct 2010 22:43:23 +0200 + + + diff --git a/tests_usr/item_duplicate_description.rss b/tests_usr/item_duplicate_description.rss new file mode 100644 index 0000000..c51fd34 --- /dev/null +++ b/tests_usr/item_duplicate_description.rss @@ -0,0 +1,10 @@ + + + + feed + + item + item + + + diff --git a/tests_usr/item_duplicate_link.rss b/tests_usr/item_duplicate_link.rss new file mode 100644 index 0000000..f87ac85 --- /dev/null +++ b/tests_usr/item_duplicate_link.rss @@ -0,0 +1,11 @@ + + + + feed + + item + /dev/null + /dev/null + + + -- 2.11.4.GIT