4
There are a number of views for merging people and teams.
9
>>> from lp.registry.interfaces.person import IPersonSet
10
>>> person_set = getUtility(IPersonSet)
11
>>> login("foo.bar@canonical.com")
13
A team (name21) can be merged into another (ubuntu-team).
15
>>> print person_set.getByName('name21').displayname
17
>>> print person_set.getByName('ubuntu-team').displayname
20
>>> form={'field.dupe_person' : 'name21',
21
... 'field.target_person' : 'ubuntu-team',
22
... 'field.actions.merge' : 'Merge'}
23
>>> view = create_initialized_view(
24
... person_set, '+adminteammerge',
29
The old team is now renamed but the target team remains.
31
>>> print person_set.getByName('name21')
33
>>> print person_set.getByName('ubuntu-team').displayname
36
Attempting to merge a non-existent team results in an error.
38
>>> form={'field.dupe_person' : 'not-a-real-team',
39
... 'field.target_person' : 'another-fake-team',
40
... 'field.actions.merge' : 'Merge'}
41
>>> view = create_initialized_view(
42
... person_set, '+adminteammerge',
46
>>> for error in view.errors: