diff options
| author | Justin Mayer <entroP@gmail.com> | 2013-05-31 16:08:53 -0700 |
|---|---|---|
| committer | Justin Mayer <entroP@gmail.com> | 2013-05-31 16:08:53 -0700 |
| commit | 55925638dbb8a81eba6303be2cae432449d7b8ff (patch) | |
| tree | 39278a859fedaaf851c70c764e7819215e494dd1 | |
| parent | 43c8a850873d4be4f39310fd123b566729986050 (diff) | |
| parent | c2ecbfae264d60acc2e810ece8bf2f3c30a64b8b (diff) | |
| download | feedgenerator-55925638dbb8a81eba6303be2cae432449d7b8ff.tar.gz | |
Merge branch 'master' of dmdm/feedgenerator-py3k
Preparing for 1.6 release
| -rw-r--r-- | feedgenerator/django/utils/feedgenerator.py | 4 | ||||
| -rw-r--r-- | feedgenerator/django/utils/xmlutils.py | 11 | ||||
| -rw-r--r-- | setup.py | 3 | ||||
| -rw-r--r-- | tests_feedgenerator/test_feedgenerator.py | 6 | ||||
| -rw-r--r-- | tests_feedgenerator/test_stringio.py | 2 | ||||
| -rw-r--r-- | tox.ini | 6 |
6 files changed, 25 insertions, 7 deletions
diff --git a/feedgenerator/django/utils/feedgenerator.py b/feedgenerator/django/utils/feedgenerator.py index 54bc7ed..e8e4d87 100644 --- a/feedgenerator/django/utils/feedgenerator.py +++ b/feedgenerator/django/utils/feedgenerator.py @@ -220,8 +220,8 @@ class RssFeed(SyndicationFeed): handler.endElement("rss") def rss_attributes(self): - return {"version": self._version, - "xmlns:atom": "http://www.w3.org/2005/Atom"} + return {'xmlns:atom': 'http://www.w3.org/2005/Atom', + 'version': self._version} def write_items(self, handler): for item in self.items: diff --git a/feedgenerator/django/utils/xmlutils.py b/feedgenerator/django/utils/xmlutils.py index a1eb5fb..fc1be2b 100644 --- a/feedgenerator/django/utils/xmlutils.py +++ b/feedgenerator/django/utils/xmlutils.py @@ -2,7 +2,9 @@ Utilities for XML generation/parsing. """ -from xml.sax.saxutils import XMLGenerator +import six + +from xml.sax.saxutils import XMLGenerator, quoteattr class SimplerXMLGenerator(XMLGenerator): def addQuickElement(self, name, contents=None, attrs=None): @@ -12,3 +14,10 @@ class SimplerXMLGenerator(XMLGenerator): if contents is not None: self.characters(contents) self.endElement(name) + + def startElement(self, name, attrs): + self._write('<' + name) + # sort attributes for consistent output + for (name, value) in sorted(attrs.items()): + self._write(' %s=%s' % (name, quoteattr(value))) + self._write(six.u('>')) @@ -32,7 +32,7 @@ MAINTAINER_EMAIL = 'dm@parenchym.com' KEYWORDS = "feed atom rss".split(' ') VERSION = '1.5' -TEST_SUITE = 'tests' +TEST_SUITE = 'tests_feedgenerator' REQUIRES = ['pytz', 'six'] @@ -52,4 +52,5 @@ setup( keywords=KEYWORDS, url=URL, classifiers=CLASSIFIERS, + zip_safe=False, ) diff --git a/tests_feedgenerator/test_feedgenerator.py b/tests_feedgenerator/test_feedgenerator.py index ccbf111..bce5dd4 100644 --- a/tests_feedgenerator/test_feedgenerator.py +++ b/tests_feedgenerator/test_feedgenerator.py @@ -29,7 +29,7 @@ FIXT_ITEM = dict( EXPECTED_RESULT = """<?xml version="1.0" encoding="utf-8"?> -<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Poynter E-Media Tidbits</title><link>http://www.poynter.org/column.asp?id=31</link><description>A group Weblog by the sharpest minds in online media/journalism/publishing. +<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Poynter E-Media Tidbits</title><link>http://www.poynter.org/column.asp?id=31</link><description>A group Weblog by the sharpest minds in online media/journalism/publishing. Umlauts: äöüßÄÖÜ Chinese: 老师是四十四,是不是? Finnish: Mustan kissan paksut posket. (ah, no special chars) Kärpänen sanoi kärpäselle: tuu kattoon kattoon ku kaveri tapettiin tapettiin. @@ -51,6 +51,9 @@ def build_expected_result(feed, expected_result, encoding): class TestFeedGenerator(unittest.TestCase): + def setUp(self): + self.maxDiff = None + def test_000_types(self): ty = str if six.PY3 else unicode for k, v in FIXT_FEED.items(): @@ -60,6 +63,7 @@ class TestFeedGenerator(unittest.TestCase): self.assertEqual(type(EXPECTED_RESULT), ty) def test_001_string_results(self): + #import ipdb; ipdb.set_trace() feed = feedgenerator.Rss201rev2Feed(**FIXT_FEED) feed.add_item(**FIXT_ITEM) result = feed.writeString(ENCODING) diff --git a/tests_feedgenerator/test_stringio.py b/tests_feedgenerator/test_stringio.py index 5ba56a8..e6a1785 100644 --- a/tests_feedgenerator/test_stringio.py +++ b/tests_feedgenerator/test_stringio.py @@ -15,7 +15,7 @@ ENCODING = 'utf-8' S0 = 'hello world, Umlauts: äöüßÄÖÜ, Chinese: 四是四,十是十,十四是十四,四十是四十,四十四隻不識字之石獅子是死的' S0_BYTES = 'fe fi foe fam'.encode(ENCODING) -print("###", StringIO, "###") +#print("###", StringIO, "###") class TestStringIO(unittest.TestCase): @@ -1,5 +1,5 @@ [tox] -envlist = py26,py27,py32 +envlist = py26,py27,py32,py33 [testenv] commands = unit2 discover @@ -15,3 +15,7 @@ deps = [testenv:py32] deps = unittest2py3k + +[testenv:py33] +deps = + unittest2py3k |
