summaryrefslogtreecommitdiffstats
path: root/xmldiff.py
diff options
context:
space:
mode:
Diffstat (limited to 'xmldiff.py')
-rw-r--r--xmldiff.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/xmldiff.py b/xmldiff.py
new file mode 100644
index 0000000..9812515
--- /dev/null
+++ b/xmldiff.py
@@ -0,0 +1,25 @@
+#!/usr/bin/python
+
+import xml.etree.ElementTree
+
+ours = xml.etree.ElementTree.parse('ours.xml').getroot().find('events')
+theirs = xml.etree.ElementTree.parse('theirs.xml').getroot().find('events')
+
+ours_set = set([x.find('handle').text for x in ours.findall('event')])
+theirs_set = set([x.find('handle').text for x in theirs.findall('event')])
+
+only_ours = ours_set.difference(theirs_set)
+only_theirs = theirs_set.difference(ours_set)
+
+ev_diff = ours_set.symmetric_difference(theirs_set)
+ev_intersection = ours_set.intersection(theirs_set)
+
+print 'ours:'
+print ' ' + str(len(ours)) + ' events in total'
+print ' ' + str(len(only_ours)) + ' only here'
+
+print 'theirs:'
+print ' ' + str(len(theirs)) + ' events in total'
+print ' ' + str(len(only_theirs)) + ' only here'
+
+print 'in both: ' + str(len(ev_intersection))