[Checkins] SVN: Products.CMFUid/trunk/Products/CMFUid/ Use %r instead of %s in error messages, so we don't trip over non-ASCII

Stefan H. Holek stefan at epy.co.at
Sat Mar 22 15:16:06 EDT 2008


Log message for revision 84856:
  Use %r instead of %s in error messages, so we don't trip over non-ASCII
  representations.
  

Changed:
  U   Products.CMFUid/trunk/Products/CMFUid/UniqueIdHandlerTool.py
  U   Products.CMFUid/trunk/Products/CMFUid/tests/test_uidhandling.py

-=-
Modified: Products.CMFUid/trunk/Products/CMFUid/UniqueIdHandlerTool.py
===================================================================
--- Products.CMFUid/trunk/Products/CMFUid/UniqueIdHandlerTool.py	2008-03-22 18:06:49 UTC (rev 84855)
+++ Products.CMFUid/trunk/Products/CMFUid/UniqueIdHandlerTool.py	2008-03-22 19:16:05 UTC (rev 84856)
@@ -109,7 +109,7 @@
         UID_ATTRIBUTE_NAME = self.UID_ATTRIBUTE_NAME
         if getattr(aq_base(obj), UID_ATTRIBUTE_NAME, None) is None:
             raise UniqueIdError, \
-                  "No unique id available to be unregistered on '%s'" % obj
+                  "No unique id available to be unregistered on %r" % obj
 
         # delete the uid and reindex
         delattr(obj, UID_ATTRIBUTE_NAME)
@@ -135,7 +135,7 @@
         """
         uid = self.queryUid(obj, None)
         if uid is None:
-            raise UniqueIdError, "No unique id available on '%s'" % obj
+            raise UniqueIdError, "No unique id available on %r" % obj
         return uid
 
     security.declarePrivate('setUid')

Modified: Products.CMFUid/trunk/Products/CMFUid/tests/test_uidhandling.py
===================================================================
--- Products.CMFUid/trunk/Products/CMFUid/tests/test_uidhandling.py	2008-03-22 18:06:49 UTC (rev 84855)
+++ Products.CMFUid/trunk/Products/CMFUid/tests/test_uidhandling.py	2008-03-22 19:16:05 UTC (rev 84856)
@@ -36,6 +36,15 @@
     pass
 
 
+class DummyContent(DummyContent):
+    """Objects may return non-ASCII when converted to str.
+    
+    Think File and Image.
+    """
+    def __str__(self):
+        return u'M\xe4dchen'
+
+
 class UniqueIdHandlerTests(SecurityTest):
 
     def _getTargetClass(self):



More information about the Checkins mailing list