Mercurial > hg > configuration
annotate tests/unit.py @ 26:4fd88b1b08d5
ABC-ing configuration providers
| author | Jeff Hammel <jhammel@mozilla.com> |
|---|---|
| date | Mon, 26 Mar 2012 16:10:15 -0700 |
| parents | b39e550402ea |
| children | c516ab813079 |
| rev | line source |
|---|---|
| 0 | 1 #!/usr/bin/env python |
| 2 | |
| 3 """ | |
| 4 unit tests | |
| 5 """ | |
| 6 | |
| 7 import os | |
| 8 import sys | |
| 9 import unittest | |
| 10 | |
|
19
cadc9514f60a
we have a legitimately failing test!
Jeff Hammel <jhammel@mozilla.com>
parents:
11
diff
changeset
|
11 from example import ExampleConfiguration # example configuration to test |
|
11
e00afe2c83bf
stubbing configuration parser
Jeff Hammel <jhammel@mozilla.com>
parents:
0
diff
changeset
|
12 |
| 0 | 13 # globals |
| 14 here = os.path.dirname(os.path.abspath(__file__)) | |
| 15 | |
|
24
39f2611db9be
rename a bunch of things and begin to work on the sanity of validation
Jeff Hammel <jhammel@mozilla.com>
parents:
19
diff
changeset
|
16 class ConfigurationUnitTest(unittest.TestCase): |
| 0 | 17 |
|
24
39f2611db9be
rename a bunch of things and begin to work on the sanity of validation
Jeff Hammel <jhammel@mozilla.com>
parents:
19
diff
changeset
|
18 def test_cli(self): |
|
19
cadc9514f60a
we have a legitimately failing test!
Jeff Hammel <jhammel@mozilla.com>
parents:
11
diff
changeset
|
19 example = ExampleConfiguration() |
|
cadc9514f60a
we have a legitimately failing test!
Jeff Hammel <jhammel@mozilla.com>
parents:
11
diff
changeset
|
20 |
|
cadc9514f60a
we have a legitimately failing test!
Jeff Hammel <jhammel@mozilla.com>
parents:
11
diff
changeset
|
21 # parse command line arguments |
|
cadc9514f60a
we have a legitimately failing test!
Jeff Hammel <jhammel@mozilla.com>
parents:
11
diff
changeset
|
22 options, args = example.parse(['-a', 'ts', '--develop', '-e', '/home/jhammel/bin/firefox']) |
|
25
b39e550402ea
we now update configuration correctly
Jeff Hammel <jhammel@mozilla.com>
parents:
24
diff
changeset
|
23 |
|
b39e550402ea
we now update configuration correctly
Jeff Hammel <jhammel@mozilla.com>
parents:
24
diff
changeset
|
24 # ensure that the options appropriately get set |
|
19
cadc9514f60a
we have a legitimately failing test!
Jeff Hammel <jhammel@mozilla.com>
parents:
11
diff
changeset
|
25 self.assertEqual(bool(args), False) # no arguments |
|
cadc9514f60a
we have a legitimately failing test!
Jeff Hammel <jhammel@mozilla.com>
parents:
11
diff
changeset
|
26 self.assertEqual(options.develop, True) |
|
25
b39e550402ea
we now update configuration correctly
Jeff Hammel <jhammel@mozilla.com>
parents:
24
diff
changeset
|
27 self.assertEqual(options.activeTests, ['ts']) |
|
b39e550402ea
we now update configuration correctly
Jeff Hammel <jhammel@mozilla.com>
parents:
24
diff
changeset
|
28 self.assertEqual(options.browser_path, '/home/jhammel/bin/firefox') |
|
b39e550402ea
we now update configuration correctly
Jeff Hammel <jhammel@mozilla.com>
parents:
24
diff
changeset
|
29 |
|
b39e550402ea
we now update configuration correctly
Jeff Hammel <jhammel@mozilla.com>
parents:
24
diff
changeset
|
30 # ensure that the configuration appropriately gets updated |
|
b39e550402ea
we now update configuration correctly
Jeff Hammel <jhammel@mozilla.com>
parents:
24
diff
changeset
|
31 self.assertEqual(example.config['develop'], True) |
|
b39e550402ea
we now update configuration correctly
Jeff Hammel <jhammel@mozilla.com>
parents:
24
diff
changeset
|
32 self.assertEqual(example.config['activeTests'], ['ts']) |
|
b39e550402ea
we now update configuration correctly
Jeff Hammel <jhammel@mozilla.com>
parents:
24
diff
changeset
|
33 self.assertEqual(example.config['browser_path'], '/home/jhammel/bin/firefox') |
| 0 | 34 |
| 35 if __name__ == '__main__': | |
| 36 unittest.main() | |
| 37 |
