summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJannis Leidel <jannis@leidel.info>2011-02-12 19:24:42 +0000
committerJannis Leidel <jannis@leidel.info>2011-02-12 19:24:42 +0000
commit6a438e2d1ab9bfdb2b4ae4cff121f812dd5fd241 (patch)
tree79f414651d2effe15eb45ecd58c731db4b0e6f53
parent748110cb94352fc0a796dec0d559f4c6a5a797c2 (diff)
[1.2.X] Fixed #15237 -- Always set charset of Atom1 feeds to UTF-8. Thanks, Simon and jasonkotenko.
Backport from trunk (r15505). git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.2.X@15512 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--django/contrib/syndication/views.py3
-rw-r--r--django/utils/feedgenerator.py2
-rw-r--r--tests/regressiontests/utils/feedgenerator.py9
3 files changed, 11 insertions, 3 deletions
diff --git a/django/contrib/syndication/views.py b/django/contrib/syndication/views.py
index 371fea3229..b0462ece55 100644
--- a/django/contrib/syndication/views.py
+++ b/django/contrib/syndication/views.py
@@ -1,9 +1,8 @@
-import datetime
from django.conf import settings
from django.contrib.sites.models import get_current_site
from django.core.exceptions import ImproperlyConfigured, ObjectDoesNotExist
from django.http import HttpResponse, Http404
-from django.template import loader, Template, TemplateDoesNotExist, RequestContext
+from django.template import loader, TemplateDoesNotExist, RequestContext
from django.utils import feedgenerator, tzinfo
from django.utils.encoding import force_unicode, iri_to_uri, smart_unicode
from django.utils.html import escape
diff --git a/django/utils/feedgenerator.py b/django/utils/feedgenerator.py
index 0fd5dfef34..b36b793cd2 100644
--- a/django/utils/feedgenerator.py
+++ b/django/utils/feedgenerator.py
@@ -285,7 +285,7 @@ class Rss201rev2Feed(RssFeed):
class Atom1Feed(SyndicationFeed):
# Spec: http://atompub.org/2005/07/11/draft-ietf-atompub-format-10.html
- mime_type = 'application/atom+xml'
+ mime_type = 'application/atom+xml; charset=utf8'
ns = u"http://www.w3.org/2005/Atom"
def write(self, outfile, encoding):
diff --git a/tests/regressiontests/utils/feedgenerator.py b/tests/regressiontests/utils/feedgenerator.py
index 9085d41c06..2ca3fe2efd 100644
--- a/tests/regressiontests/utils/feedgenerator.py
+++ b/tests/regressiontests/utils/feedgenerator.py
@@ -61,3 +61,12 @@ class FeedgeneratorTest(unittest.TestCase):
"2008-11-14T13:37:00+02:00"
)
+ def test_atom1_mime_type(self):
+ """
+ Test to make sure Atom MIME type has UTF8 Charset parameter set
+ """
+ atom_feed = feedgenerator.Atom1Feed("title", "link", "description")
+ self.assertEqual(
+ atom_feed.mime_type, "application/atom+xml; charset=utf8"
+ )
+