Changeset 776
- Timestamp:
- 11/01/05 15:05:40
- Files:
-
- trunk/cherrypy/lib/filter/gzipfilter.py (modified) (1 diff)
- trunk/cherrypy/test/test_core.py (modified) (2 diffs)
- trunk/cherrypy/test/test_gzip_filter.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/cherrypy/lib/filter/gzipfilter.py
r774 r776 24 24 def zipit(): 25 25 # Return a generator that compresses the page 26 varies = response.headerMap.get("Vary", "") 27 varies = [x.strip() for x in varies.split(",") if x.strip()] 28 if "Accept-Encoding" not in varies: 29 varies.append("Accept-Encoding") 30 response.headerMap['Vary'] = ", ".join(varies) 31 26 32 response.headerMap['Content-Encoding'] = 'gzip' 27 33 level = cherrypy.config.get('gzipFilter.compresslevel', 9) trunk/cherrypy/test/test_core.py
r774 r776 185 185 class Headers(Test): 186 186 187 def index(self):187 def doubledheaders(self): 188 188 # From http://www.cherrypy.org/ticket/165: 189 189 # "header field names should not be case sensitive sayes the rfc. … … 672 672 "en;q=0.7") 673 673 674 def testHeader CaseSensitivity(self):674 def testHeaders(self): 675 675 # Tests that each header only appears once, regardless of case. 676 self.getPage("/headers/ ")676 self.getPage("/headers/doubledheaders") 677 677 self.assertBody("double header test") 678 678 hnames = [name.title() for name, val in self.headers] trunk/cherrypy/test/test_gzip_filter.py
r774 r776 46 46 self.getPage('/', headers=[("Accept-Encoding", "gzip")]) 47 47 self.assertInBody(zbuf.getvalue()[:3]) 48 self.assertHeader("Vary", "Accept-Encoding") 48 49 49 50 # Test when gzip is denied. 50 51 self.getPage('/', headers=[("Accept-Encoding", "identity")]) 52 self.assertNoHeader("Vary") 51 53 self.assertBody("Hello, world") 54 52 55 self.getPage('/', headers=[("Accept-Encoding", "gzip;q=0")]) 56 self.assertNoHeader("Vary") 53 57 self.assertBody("Hello, world") 58 54 59 self.getPage('/', headers=[("Accept-Encoding", "*;q=0")]) 55 60 self.assertStatus("406 Not Acceptable") 61 self.assertNoHeader("Vary") 56 62 self.assertErrorPage(406, "identity, gzip") 57 63

