diff --git a/planet/reconstitute.py b/planet/reconstitute.py index 3ab9cd8..c5123da 100644 --- a/planet/reconstitute.py +++ b/planet/reconstitute.py @@ -111,8 +111,8 @@ def date(xentry, name, parsed): def category(xentry, tag): xtag = xentry.ownerDocument.createElement('category') - if tag.has_key('term') and tag.term: - xtag.setAttribute('term', tag.get('term')) + if not tag.has_key('term') or not tag.term: return + xtag.setAttribute('term', tag.get('term')) if tag.has_key('scheme') and tag.scheme: xtag.setAttribute('scheme', tag.get('scheme')) if tag.has_key('label') and tag.label: diff --git a/tests/data/reconstitute/category_blank_term.xml b/tests/data/reconstitute/category_blank_term.xml new file mode 100644 index 0000000..564a740 --- /dev/null +++ b/tests/data/reconstitute/category_blank_term.xml @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/tests/data/reconstitute/category_label.xml b/tests/data/reconstitute/category_label.xml index fc38fc7..4501d28 100644 --- a/tests/data/reconstitute/category_label.xml +++ b/tests/data/reconstitute/category_label.xml @@ -5,7 +5,7 @@ Expect: tags[0].label == 'Inbox' - + diff --git a/tests/data/reconstitute/category_scheme.xml b/tests/data/reconstitute/category_scheme.xml index b1cbbb4..81f3c93 100644 --- a/tests/data/reconstitute/category_scheme.xml +++ b/tests/data/reconstitute/category_scheme.xml @@ -5,7 +5,7 @@ Expect: tags[0].scheme == 'http://example.com/categories' - + diff --git a/tests/reconstitute.py b/tests/reconstitute.py index 4af8e77..dd57b92 100644 --- a/tests/reconstitute.py +++ b/tests/reconstitute.py @@ -41,7 +41,7 @@ if __name__ == "__main__": from planet import spider spider.spiderPlanet(only_if_new=False) - from planet import feedparser + import feedparser for source in glob.glob(os.path.join(work, 'sources/*')): feed = feedparser.parse(source).feed if feed.has_key('title'):