changeset 15:07974aeffefe

refactored tests a bit
author Atul Varma <varmaa@toolness.com>
date Wed, 23 Dec 2009 21:06:31 -0800
parents 3ebc043d9ff7
children aa2e7f3731c1
files test.py
diffstat 1 files changed, 13 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/test.py	Wed Dec 23 20:51:15 2009 -0800
+++ b/test.py	Wed Dec 23 21:06:31 2009 -0800
@@ -1,15 +1,11 @@
 import unittest
 import StringIO
+import copy
 
 import simplejson as json
 import bzapi
 
-FAKE_CONFIG = {
-    'product': {
-        'Mozilla Labs': { 'component': { 'Jetpack': {} } },
-        'addons.mozilla.org': {}
-        }
-    }
+FAKE_CONFIG = {'product': {}}
 
 class FakeOpenUrl(object):
     def __init__(self):
@@ -83,10 +79,10 @@
             'meh'
             )
 
-    def _get_basic_fake_api(self, **kwargs):
+    def _get_basic_fake_api(self, config=FAKE_CONFIG, **kwargs):
         opener = FakeOpenUrl()
         opener.set('http://foo/latest/configuration', kwargs,
-                   FAKE_CONFIG)
+                   config)
         api = bzapi.BugzillaApi('http://foo/latest', FakeCollection(),
                                 open_url=opener, **kwargs)
         return api
@@ -101,7 +97,9 @@
         api.get('/stuff')
 
     def test_bzapi_raises_err_on_bad_component(self):
-        api = self._get_basic_fake_api()
+        config = copy.deepcopy(FAKE_CONFIG)
+        config['product']['Mozilla Labs'] = {'component': {'Jetpack': {}}}
+        api = self._get_basic_fake_api(config=config)
         self.assertRaises(ValueError,
                           api.get,
                           '/blah',
@@ -116,7 +114,9 @@
                           product='nonexistent')
 
     def test_bzapi_validates_product_and_component(self):
-        api = self._get_basic_fake_api()
+        config = copy.deepcopy(FAKE_CONFIG)
+        config['product']['Mozilla Labs'] = {'component': {'Jetpack': {}}}
+        api = self._get_basic_fake_api(config=config)
         api._open_url.set('http://foo/latest/stuff',
                           {'product': 'Mozilla Labs',
                            'component': 'Jetpack'},
@@ -124,7 +124,9 @@
         api.get('/stuff', product='Mozilla Labs', component='Jetpack')
 
     def test_bzapi_removes_dots_from_config(self):
-        api = self._get_basic_fake_api()
+        config = copy.deepcopy(FAKE_CONFIG)
+        config['product']['addons.mozilla.org'] = {}
+        api = self._get_basic_fake_api(config=config)
         self.assertTrue('addons_DOT_mozilla_DOT_org' in api.config['product'])
 
 if __name__ == '__main__':