Download Install Tutorial Docs FAQ Tools WikiLicense Team IRC Planet Involvement Shop Book

Changeset 2066

Show
Ignore:
Timestamp:
11/08/08 11:39:50
Author:
fumanchu
Message:

Backport of [2013] to branches/3.1.x.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/cherrypy-3.1.x/cherrypy/_cptools.py

    r1986 r2066  
    467467_d.log_hooks = Tool('on_end_request', cptools.log_hooks, priority=100) 
    468468_d.err_redirect = ErrorTool(cptools.redirect) 
    469 _d.etags = Tool('before_finalize', cptools.validate_etags
     469_d.etags = Tool('before_finalize', cptools.validate_etags, priority=75
    470470_d.decode = Tool('before_handler', encoding.decode) 
    471471# the order of encoding, gzip, caching is important 
  • branches/cherrypy-3.1.x/cherrypy/test/test_etags.py

    r1445 r2066  
    1818                raise cherrypy.HTTPError(code) 
    1919        fail.exposed = True 
     20         
     21        def unicoded(self): 
     22            return u'I am a \u1ee4nicode string.' 
     23        unicoded.exposed = True 
     24        unicoded._cp_config = {'tools.encode.on': True} 
    2025     
    2126    conf = {'/': {'tools.etags.on': True, 
    22                   'tools.etags.autotags': True}} 
     27                  'tools.etags.autotags': True, 
     28                  }} 
    2329    cherrypy.tree.mount(Root(), config=conf) 
    2430    cherrypy.config.update({'environment': 'test_suite'}) 
     
    2834class ETagTest(helper.CPWebCase): 
    2935     
    30     def testETags(self): 
     36    def test_etags(self): 
    3137        self.getPage("/resource") 
    3238        self.assertStatus('200 OK') 
     
    5460        self.getPage("/resource", headers=[('If-None-Match', "a bogus tag")]) 
    5561        self.assertStatus("200 OK") 
     62     
     63    def test_errors(self): 
     64        self.getPage("/resource") 
     65        self.assertStatus(200) 
     66        etag = self.assertHeader('ETag') 
    5667         
    5768        # Test raising errors in page handler 
     
    6475        self.getPage("/fail/304", headers=[('If-None-Match', "*")]) 
    6576        self.assertStatus(304) 
     77     
     78    def test_unicode_body(self): 
     79        self.getPage("/unicoded") 
     80        self.assertStatus(200) 
     81        etag1 = self.assertHeader('ETag') 
     82        self.getPage("/unicoded", headers=[('If-Match', etag1)]) 
     83        self.assertStatus(200) 
     84        self.assertHeader('ETag', etag1) 
    6685 
    6786 

Hosted by WebFaction

Log in as guest/cpguest to create tickets