[Checkins] SVN: zope.testbrowser/trunk/ Fixed Python2.7 compatibility in Browser.handleErrors.
Jan-Jaap Driessen
jdriessen at thehealthagency.com
Thu Oct 14 13:08:38 EDT 2010
Log message for revision 117561:
Fixed Python2.7 compatibility in Browser.handleErrors.
Changed:
U zope.testbrowser/trunk/CHANGES.txt
U zope.testbrowser/trunk/src/zope/testbrowser/browser.py
U zope.testbrowser/trunk/src/zope/testbrowser/testing.py
-=-
Modified: zope.testbrowser/trunk/CHANGES.txt
===================================================================
--- zope.testbrowser/trunk/CHANGES.txt 2010-10-14 16:22:17 UTC (rev 117560)
+++ zope.testbrowser/trunk/CHANGES.txt 2010-10-14 17:08:37 UTC (rev 117561)
@@ -5,7 +5,7 @@
3.10.2 (unreleased)
-------------------
-- Nothing changed yet.
+- Fixed Python2.7 compatibility in Browser.handleErrors.
3.10.1 (2010-09-21)
Modified: zope.testbrowser/trunk/src/zope/testbrowser/browser.py
===================================================================
--- zope.testbrowser/trunk/src/zope/testbrowser/browser.py 2010-10-14 16:22:17 UTC (rev 117560)
+++ zope.testbrowser/trunk/src/zope/testbrowser/browser.py 2010-10-14 17:08:37 UTC (rev 117561)
@@ -212,17 +212,22 @@
def get(self):
headers = self.mech_browser.addheaders
- return dict(headers).get(header_key, True)
+ value = dict(headers).get(header_key, True)
+ return {'false': False}.get(value, True)
def set(self, value):
headers = self.mech_browser.addheaders
current_value = get(self)
if current_value == value:
return
- if header_key in dict(headers):
- headers.remove((header_key, current_value))
- headers.append((header_key, value))
+ # Remove the current header...
+ for key, header_value in headers[:]:
+ if key == header_key:
+ headers.remove((key, header_value))
+ # ... Before adding the new one.
+ headers.append((header_key, {False: 'false'}.get(value, 'true')))
+
return property(get, set)
def open(self, url, data=None):
Modified: zope.testbrowser/trunk/src/zope/testbrowser/testing.py
===================================================================
--- zope.testbrowser/trunk/src/zope/testbrowser/testing.py 2010-10-14 16:22:17 UTC (rev 117560)
+++ zope.testbrowser/trunk/src/zope/testbrowser/testing.py 2010-10-14 17:08:37 UTC (rev 117561)
@@ -54,9 +54,11 @@
handle_errors_key = 'X-Zope-Handle-Errors'
else:
handle_errors_key = 'X-zope-handle-errors'
- handle_errors = headers.get(handle_errors_key, True)
+ handle_errors_header = headers.get(handle_errors_key, True)
if handle_errors_key in headers:
del headers[handle_errors_key]
+ # Translate string to boolean.
+ handle_errors = {'false': False}.get(handle_errors_header, True)
# Construct the headers.
header_chunks = []
More information about the checkins
mailing list