summaryrefslogtreecommitdiff
path: root/test/test_wsgi.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_wsgi.py')
-rwxr-xr-xtest/test_wsgi.py61
1 files changed, 15 insertions, 46 deletions
diff --git a/test/test_wsgi.py b/test/test_wsgi.py
index 57ec545..cad526a 100755
--- a/test/test_wsgi.py
+++ b/test/test_wsgi.py
@@ -50,14 +50,14 @@ class TestWsgi(ServerTestBase):
self.assertStatus(200, '/any', method='HEAD')
self.assertBody('test', '/any', method='GET')
self.assertBody('test', '/any', method='POST')
- self.assertBody('test', '/any', method='1337')
+ self.assertBody('test', '/any', method='DELETE')
@bottle.route('/any', method='GET')
def test2(): return 'test2'
self.assertBody('test2', '/any', method='GET')
@bottle.route('/any', method='POST')
def test2(): return 'test3'
self.assertBody('test3', '/any', method='POST')
- self.assertBody('test', '/any', method='1337')
+ self.assertBody('test', '/any', method='DELETE')
def test_500(self):
""" WSGI: Exceptions within handler code (HTTP 500) """
@@ -106,50 +106,19 @@ class TestWsgi(ServerTestBase):
self.assertStatus(303, '/')
self.assertHeader('Location', 'http://127.0.0.1/yes', '/')
- def test_casting(self):
- """ WSGI: Output Casting (strings an lists) """
- @bottle.route('/str')
- def test(): return 'test'
- self.assertBody('test', '/str')
- @bottle.route('/list')
- def test2(): return ['t', 'e', 'st']
- self.assertBody('test', '/list')
- @bottle.route('/empty')
- def test3(): return []
- self.assertBody('', '/empty')
- @bottle.route('/none')
- def test4(): return None
- self.assertBody('', '/none')
- @bottle.route('/bad')
- def test5(): return 12345
- self.assertStatus(500,'/bad')
-
- def test_file(self):
- """ WSGI: Output Casting (files) """
- @bottle.route('/file')
- def test(): return StringIO('test')
- self.assertBody('test', '/file')
-
- def test_unicode(self):
- """ WSGI: Test Unicode support """
- @bottle.route('/unicode')
- def test3(): return u'äöüß'
- @bottle.route('/unicode2')
- def test4(): return [u'äöüß']
- @bottle.route('/unicode3')
- def test5():
- bottle.response.content_type='text/html; charset=iso-8859-15'
- return u'äöüß'
- self.assertBody(u'äöüß'.encode('utf8'), '/unicode')
- self.assertBody(u'äöüß'.encode('utf8'), '/unicode2')
- self.assertBody(u'äöüß'.encode('iso-8859-15'), '/unicode3')
-
- def test_json(self):
- """ WSGI: Autojson feature """
- @bottle.route('/json')
- def test(): return {'a': 1}
- self.assertBody(self.app.jsondump({'a': 1}), '/json')
- self.assertHeader('Content-Type','application/json', '/json')
+ def test_generator_callback(self):
+ @bottle.route('/yield')
+ def test():
+ bottle.response.header['Test-Header'] = 'test'
+ yield 'foo'
+ @bottle.route('/yield_nothing')
+ def test2():
+ yield
+ bottle.response.header['Test-Header'] = 'test'
+ self.assertBody('foo', '/yield')
+ self.assertHeader('Test-Header', 'test', '/yield')
+ self.assertBody('', '/yield_nothing')
+ self.assertHeader('Test-Header', 'test', '/yield_nothing')
def test_cookie(self):
""" WSGI: Cookies """