~launchpad-pqm/launchpad/devel

« back to all changes in this revision

Viewing changes to lib/lp/registry/browser/tests/peoplemerge-views.txt

  • Committer: Brad Crittenden
  • Date: 2009-07-02 13:23:47 UTC
  • mto: This revision was merged to the branch mainline in revision 8787.
  • Revision ID: bac@canonical.com-20090702132347-03pj475virn9yeno
Properly handle invalid teams when merging.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
People Merge Pages
 
2
==================
 
3
 
 
4
There are a number of views for merging people and teams.
 
5
 
 
6
Team Merges
 
7
-----------
 
8
 
 
9
    >>> from lp.registry.interfaces.person import IPersonSet
 
10
    >>> person_set = getUtility(IPersonSet)
 
11
    >>> login("foo.bar@canonical.com")
 
12
 
 
13
A team (name21) can be merged into another (ubuntu-team).
 
14
 
 
15
    >>> print person_set.getByName('name21').displayname
 
16
    Hoary Gnome Team
 
17
    >>> print person_set.getByName('ubuntu-team').displayname
 
18
    Ubuntu Team
 
19
 
 
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',
 
25
    ...     form=form)
 
26
    >>> len(view.errors)
 
27
    0
 
28
 
 
29
The old team is now renamed but the target team remains.
 
30
 
 
31
    >>> print person_set.getByName('name21')
 
32
    None
 
33
    >>> print person_set.getByName('ubuntu-team').displayname
 
34
    Ubuntu Team
 
35
 
 
36
Attempting to merge a non-existent team results in an error.
 
37
 
 
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',
 
43
    ...     form=form)
 
44
    >>> len(view.errors)
 
45
    2
 
46
    >>> for error in view.errors:
 
47
    ...     print error[0]
 
48
    Invalid value
 
49
    Invalid value