Mercurial > mozilla > hg > ProfileManager
annotate profilemanager/tests/test.py @ 47:420becb84df7
* move exception string to the exception itself
* further stubbing on backup
* stub on temporary profile function
| author | Jeff Hammel <jhammel@mozilla.com> |
|---|---|
| date | Fri, 07 May 2010 09:06:16 -0700 |
| parents | 8eb997fd6e79 |
| children | 09a2666999fa |
| rev | line source |
|---|---|
| 12 | 1 #!/usr/bin/env python |
| 2 | |
|
32
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
3 import os |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
4 from profilemanager import ProfileManager |
| 12 | 5 |
|
32
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
6 # Get the path to the test profiles.ini file: |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
7 from pkg_resources import resource_filename |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
8 profiles_dir = os.path.join('tests', 'profiles') |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
9 path = os.path.join(profiles_dir, 'profiles.ini') |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
10 profiles = resource_filename('profilemanager', path) |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
11 profiles_dir = resource_filename('profilemanager', profiles_dir) |
| 34 | 12 assert os.path.exists(profiles), '%s does not exist' % profiles |
| 13 assert os.path.exists(profiles_dir), '%s does not exist' % profiles_dir | |
| 12 | 14 |
|
32
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
15 # Instatiate a ProfileManager: |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
16 manager = ProfileManager(profiles) |
| 12 | 17 |
|
32
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
18 # Remove any profiles that didn't get cleaned up: |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
19 profiles_dict = manager.profiles_dict() |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
20 for profile in profiles_dict: |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
21 manager.remove(profile) |
| 34 | 22 assert os.listdir(profiles_dir) == ['profiles.ini'], 'profiles_dir isnt empty except profiles.ini' |
| 23 assert file(profiles).read().strip() == '[General]', 'profiles.ini isnt nearly empty' | |
|
32
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
24 |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
25 # Create a new profile: |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
26 profiledir = manager.new('testprofile') |
| 35 | 27 assert profiledir.endswith('.testprofile'), 'profiledir should end with testprofile, instead it is %s' % profiledir |
| 39 | 28 assert manager.list() == ['testprofile'] |
| 12 | 29 |
| 43 | 30 # Clone the profile: |
| 31 manager.clone('testprofile', 'cloneprofile') | |
| 32 assert sorted(manager.list()) == ['cloneprofile', 'testprofile'] | |
| 44 | 33 manager.remove('cloneprofile') |
| 43 | 34 |
|
32
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
35 # Cleanup: |
|
6f2ad307fdda
dont use any testing framework because they make testing hard
Jeff Hammel <jhammel@mozilla.com>
parents:
28
diff
changeset
|
36 manager.remove('testprofile') |
| 39 | 37 assert manager.list() == [] |
