Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/cherrypy/test/test_etags.py
diff options
context:
space:
mode:
Diffstat (limited to 'cherrypy/test/test_etags.py')
-rwxr-xr-xcherrypy/test/test_etags.py81
1 files changed, 0 insertions, 81 deletions
diff --git a/cherrypy/test/test_etags.py b/cherrypy/test/test_etags.py
deleted file mode 100755
index 026f9d6..0000000
--- a/cherrypy/test/test_etags.py
+++ /dev/null
@@ -1,81 +0,0 @@
-import cherrypy
-from cherrypy.test import helper
-
-
-class ETagTest(helper.CPWebCase):
-
- def setup_server():
- class Root:
- def resource(self):
- return "Oh wah ta goo Siam."
- resource.exposed = True
-
- def fail(self, code):
- code = int(code)
- if 300 <= code <= 399:
- raise cherrypy.HTTPRedirect([], code)
- else:
- raise cherrypy.HTTPError(code)
- fail.exposed = True
-
- def unicoded(self):
- return u'I am a \u1ee4nicode string.'
- unicoded.exposed = True
- unicoded._cp_config = {'tools.encode.on': True}
-
- conf = {'/': {'tools.etags.on': True,
- 'tools.etags.autotags': True,
- }}
- cherrypy.tree.mount(Root(), config=conf)
- setup_server = staticmethod(setup_server)
-
- def test_etags(self):
- self.getPage("/resource")
- self.assertStatus('200 OK')
- self.assertHeader('Content-Type', 'text/html;charset=utf-8')
- self.assertBody('Oh wah ta goo Siam.')
- etag = self.assertHeader('ETag')
-
- # Test If-Match (both valid and invalid)
- self.getPage("/resource", headers=[('If-Match', etag)])
- self.assertStatus("200 OK")
- self.getPage("/resource", headers=[('If-Match', "*")])
- self.assertStatus("200 OK")
- self.getPage("/resource", headers=[('If-Match', "*")], method="POST")
- self.assertStatus("200 OK")
- self.getPage("/resource", headers=[('If-Match', "a bogus tag")])
- self.assertStatus("412 Precondition Failed")
-
- # Test If-None-Match (both valid and invalid)
- self.getPage("/resource", headers=[('If-None-Match', etag)])
- self.assertStatus(304)
- self.getPage("/resource", method='POST', headers=[('If-None-Match', etag)])
- self.assertStatus("412 Precondition Failed")
- self.getPage("/resource", headers=[('If-None-Match', "*")])
- self.assertStatus(304)
- self.getPage("/resource", headers=[('If-None-Match', "a bogus tag")])
- self.assertStatus("200 OK")
-
- def test_errors(self):
- self.getPage("/resource")
- self.assertStatus(200)
- etag = self.assertHeader('ETag')
-
- # Test raising errors in page handler
- self.getPage("/fail/412", headers=[('If-Match', etag)])
- self.assertStatus(412)
- self.getPage("/fail/304", headers=[('If-Match', etag)])
- self.assertStatus(304)
- self.getPage("/fail/412", headers=[('If-None-Match', "*")])
- self.assertStatus(412)
- self.getPage("/fail/304", headers=[('If-None-Match', "*")])
- self.assertStatus(304)
-
- def test_unicode_body(self):
- self.getPage("/unicoded")
- self.assertStatus(200)
- etag1 = self.assertHeader('ETag')
- self.getPage("/unicoded", headers=[('If-Match', etag1)])
- self.assertStatus(200)
- self.assertHeader('ETag', etag1)
-