Anonymous avatar Anonymous committed 12b581d

mimehelper: working with */* and text/*

Comments (0)

Files changed (2)

tests/test_mimetypes.py

     environ['PATH_INFO'] = '/test'
     m = MIMETypes(environ)
     assert m.mimetype('html') == 'text/html'
+
+def test_with_text_star_accept():
+    environ = test_environ()
+    environ['PATH_INFO'] = '/test.iscool'
+    environ['HTTP_ACCEPT'] = 'text/*'
+    m = MIMETypes(environ)
+    assert m.mimetype('text/html') == 'text/html'
+
+def test_with_star_star_accept():
+    environ = test_environ()
+    environ['PATH_INFO'] = '/test.iscool'
+    environ['HTTP_ACCEPT'] = '*/*'
+    m = MIMETypes(environ)
+    assert m.mimetype('application/xml') == 'application/xml'

webhelpers/mimehelper.py

             if '.' in last_part:
                 has_extension = True
         if 'HTTP_ACCEPT' in self.env:
-            possible_from_accept_header = [type for type, q in webob.acceptparse.parse_accept(
-                self.env['HTTP_ACCEPT'])]
+            possible_from_accept_header = webob.acceptparse.MIMEAccept('ACCEPT', 
+                self.env['HTTP_ACCEPT'])
         if has_extension == False:
             if possible_from_accept_header is None:
                 return self._set_responce_conetent_type(mimetype)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.