Merge lp:~piastucki/bzr-xmloutput/emit_authors into lp:bzr-xmloutput

Proposed by Piotr Piastucki
Status: Merged
Merged at revision: 171
Proposed branch: lp:~piastucki/bzr-xmloutput/emit_authors
Merge into: lp:bzr-xmloutput
Diff against target: 76 lines (+20/-6)
2 files modified
logxml.py (+12/-5)
tests/test_log_xml.py (+8/-1)
To merge this branch: bzr merge lp:~piastucki/bzr-xmloutput/emit_authors
Reviewer Review Type Date Requested Status
Guillermo Gonzalez Needs Fixing
Review via email: mp+161166@code.launchpad.net

Description of the change

This is a fixed version of the changes proposed in lp:~amujumdar/bzr-xmloutput/emit_authors.

To post a comment you must log in.
Revision history for this message
Guillermo Gonzalez (verterok) wrote :

Hi Piotr,

Thanks for working on this. Looks like there is an identation issue at line 10 of the diff that trigger a lot of test failures:

FAILED (failures=27, errors=2)

I'll push it with the fixes.

Thanks.

review: Needs Fixing

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'logxml.py'
2--- logxml.py 2011-12-12 15:11:38 +0000
3+++ logxml.py 2013-04-26 15:14:26 +0000
4@@ -48,8 +48,8 @@
5 actions = []
6 # to handle merge revision as childs
7 if revision.merge_depth > 0 and not self.start_with_merge:
8- if self.previous_merge_depth < revision.merge_depth:
9- if self.log_count > 0:
10+ if self.previous_merge_depth < revision.merge_depth:
11+ if self.log_count > 0:
12 merge_depth_diference = revision.merge_depth - \
13 self.previous_merge_depth
14 for m in range(merge_depth_diference):
15@@ -66,7 +66,7 @@
16 revision.merge_depth})
17 if self.nested_merge_count > 0:
18 self.nested_merge_count -= 1
19- else:
20+ else:
21 actions.append(self.__close_log)
22 else:
23 if self.open_logs > 0:
24@@ -100,9 +100,9 @@
25 self.previous_merge_depth = revision.merge_depth
26
27 def __open_merge(self):
28- self.to_file.write('<merge>')
29+ self.to_file.write('<merge>')
30 self.open_merges += 1
31- self.stack.append('merge')
32+ self.stack.append('merge')
33
34 def __close_merge(self, num=1):
35 for item in self.stack.__reversed__():
36@@ -152,6 +152,13 @@
37 self.to_file.write('<committer>%s</committer>' % \
38 _escape_cdata(revision.rev.committer))
39
40+ authors = revision.rev.get_apparent_authors()
41+ if authors != [revision.rev.committer]:
42+ self.to_file.write('<authors>')
43+ for a in authors:
44+ self.to_file.write('<author>%s</author>' % _escape_cdata(a))
45+ self.to_file.write('</authors>')
46+
47 try:
48 self.to_file.write('<branch-nick>%s</branch-nick>' % \
49 _escape_cdata(revision.rev.properties['branch-nick']))
50
51=== modified file 'tests/test_log_xml.py'
52--- tests/test_log_xml.py 2012-02-21 10:14:16 +0000
53+++ tests/test_log_xml.py 2013-04-26 15:14:26 +0000
54@@ -40,7 +40,7 @@
55 tree.add('goodbye.txt')
56 tree.commit(message='message2')
57 tree.add('meep.txt')
58- tree.commit(message='message3')
59+ tree.commit(message='message3', authors=['John Doe <jdoe@example.com>'])
60 self.full_log_xml = fromstring(self.run_bzr(["xmllog", path])[0])
61 return tree
62
63@@ -208,6 +208,13 @@
64 #self.assertTrue('revno: 2\n' in log)
65 #self.assertTrue('revno: 3\n' in log)
66
67+ def test_log_author(self):
68+ self._prepare()
69+ log_xml = fromstring(self.run_bzr("xmllog -r 3..3")[0])
70+ authors = log_xml.findall('log/authors/author')
71+ self.assertEquals(1, len(authors))
72+ self.assertEquals(authors[0].text, 'John Doe <jdoe@example.com>')
73+
74 class TestLogMerges(ExternalBase):
75
76 def _prepare(self):

Subscribers

People subscribed via source and target branches

to all changes: