[Checkins] SVN: z3c.schemadiff/trunk/ Drop fields where one value is 'None'.

Malthe Borch mborch at gmail.com
Wed Mar 25 05:21:57 EDT 2009


Log message for revision 98357:
  Drop fields where one value is 'None'.

Changed:
  A   z3c.schemadiff/trunk/CHANGES.txt
  U   z3c.schemadiff/trunk/src/z3c/schemadiff/schema.py

-=-
Added: z3c.schemadiff/trunk/CHANGES.txt
===================================================================
--- z3c.schemadiff/trunk/CHANGES.txt	                        (rev 0)
+++ z3c.schemadiff/trunk/CHANGES.txt	2009-03-25 09:21:56 UTC (rev 98357)
@@ -0,0 +1,11 @@
+Changelog
+=========
+
+In next release:
+
+- Drop field if either value is ``None``. [malthe]
+
+0.1 (2008-04-30)
+----------------
+
+- Initial release.

Modified: z3c.schemadiff/trunk/src/z3c/schemadiff/schema.py
===================================================================
--- z3c.schemadiff/trunk/src/z3c/schemadiff/schema.py	2009-03-25 08:41:31 UTC (rev 98356)
+++ z3c.schemadiff/trunk/src/z3c/schemadiff/schema.py	2009-03-25 09:21:56 UTC (rev 98357)
@@ -16,10 +16,16 @@
                 diff = IFieldDiff(field)
             except TypeError:
                 continue
+
+            source_value = getattr(source, name, field.default)
+            target_value = getattr(target, name, field.default)
+
+            if source_value is None or target_value is None:
+                continue
+            
+            a = diff.lines(source_value)
+            b = diff.lines(target_value)
                 
-            a = diff.lines(getattr(source, name, field.default))
-            b = diff.lines(getattr(target, name, field.default))
-
             results[field] = (a, b)
 
     return results



More information about the Checkins mailing list