Skip to content

Commit

Permalink
Fixup for 5c52eb0
Browse files Browse the repository at this point in the history
  • Loading branch information
defnull committed Dec 18, 2019
1 parent 085f186 commit e33f045
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 11 deletions.
4 changes: 2 additions & 2 deletions bottle.py
Expand Up @@ -735,8 +735,8 @@ def start_response(status, headerlist, exc_info=None):
# follow PEP-3333 (which requires latin1) or used a
# pre-encoding other than utf8 :/
status = status.encode('latin1').decode('utf8')
headerlist = [k, v.encode('latin1').decode('utf8')
for k, v in headerlist]
headerlist = [(k, v.encode('latin1').decode('utf8'))
for (k, v) in headerlist]
rs.status = status
for name, value in headerlist:
rs.add_header(name, value)
Expand Down
17 changes: 8 additions & 9 deletions test/test_environ.py
Expand Up @@ -556,15 +556,6 @@ def test(): rs.status = 5
self.assertEqual(rs.status_code, 404)
self.assertEqual(rs.status_line, '404 Brain not Found')

# Unicode in status line (thanks RFC7230 :/)
if bottle.py3k:
def test(): rs.status = '400 Non-ASCÜ'
self.assertRaises(ValueError, test)
self.assertEqual(rs.status, rs.status_line)
self.assertEqual(rs.status_code, 400)
wire = rs._wsgi_status_line().encode('latin1')
self.assertEqual(rs.status, wire.decode('utf8'))

def test(): rs.status = '5 Illegal Code'
self.assertRaises(ValueError, test)
self.assertEqual(rs.status, rs.status_line) # last value
Expand All @@ -589,6 +580,14 @@ def test(): rs.status = '555' # No reason
self.assertEqual(rs.status_code, 404) # last value
self.assertEqual(rs.status_line, '404 Brain not Found') # last value

# Unicode in status line (thanks RFC7230 :/)
if bottle.py3k:
rs.status = '400 Non-ASÎÎ'
self.assertEqual(rs.status, rs.status_line)
self.assertEqual(rs.status_code, 400)
wire = rs._wsgi_status_line().encode('latin1')
self.assertEqual(rs.status, wire.decode('utf8'))

def test_content_type(self):
rs = BaseResponse()
rs.content_type = 'test/some'
Expand Down

0 comments on commit e33f045

Please sign in to comment.