Ask Solem пре 12 година
родитељ
комит
2d49db4a37
3 измењених фајлова са 31 додато и 38 уклоњено
  1. 2 2
      celery/app/base.py
  2. 29 0
      celery/tests/app/test_app.py
  3. 0 36
      celery/tests/app/test_loaders.py

+ 2 - 2
celery/app/base.py

@@ -46,7 +46,7 @@ BUILTIN_FIXUPS = frozenset([
     'celery.fixups.django:fixup',
 ])
 
-ERROR_ENVVAR_NOT_SET = """\
+ERR_ENVVAR_NOT_SET = """\
 The environment variable {0!r} is not set,
 and as such the configuration could not be loaded.
 Please set this variable and make it point to
@@ -253,7 +253,7 @@ class Celery(object):
         if not module_name:
             if silent:
                 return False
-            raise ImproperlyConfigured(ERROR_ENVVAR_NOT_SET % module_name)
+            raise ImproperlyConfigured(ERR_ENVVAR_NOT_SET.format(module_name))
         return self.config_from_object(module_name, silent=silent)
 
     def config_from_cmdline(self, argv, namespace='celery'):

+ 29 - 0
celery/tests/app/test_app.py

@@ -11,6 +11,7 @@ from celery import Celery
 from celery import app as _app
 from celery import _state
 from celery.app import defaults
+from celery.exceptions import ImproperlyConfigured
 from celery.five import items
 from celery.loaders.base import BaseLoader
 from celery.platforms import pyimplementation
@@ -24,6 +25,13 @@ from celery.utils.mail import ErrorMail
 
 THIS_IS_A_KEY = 'this is a value'
 
+class ObjectConfig(object):
+    FOO = 1
+    BAR = 2
+
+object_config = ObjectConfig()
+dict_config = dict(FOO=10, BAR=20)
+
 
 class Object(object):
 
@@ -358,6 +366,27 @@ class test_App(Case):
         # not set as current, so ends up as default app after reduce
         self.assertIs(r.app, _state.default_app)
 
+    def test_config_from_envvar_more(self, key='CELERY_HARNESS_CFG1'):
+        self.assertFalse(self.app.config_from_envvar('HDSAJIHWIQHEWQU',
+                                                     silent=True))
+        with self.assertRaises(ImproperlyConfigured):
+            self.app.config_from_envvar('HDSAJIHWIQHEWQU', silent=False)
+        os.environ[key] = __name__ + '.object_config'
+        self.assertTrue(self.app.config_from_envvar(key))
+        self.assertEqual(self.app.conf['FOO'], 1)
+        self.assertEqual(self.app.conf['BAR'], 2)
+
+        os.environ[key] = 'unknown_asdwqe.asdwqewqe'
+        with self.assertRaises(ImportError):
+            self.app.config_from_envvar(key, silent=False)
+        self.assertFalse(self.app.config_from_envvar(key, silent=True))
+
+        os.environ[key] = __name__ + '.dict_config'
+        self.assertTrue(self.app.config_from_envvar(key))
+        self.assertEqual(self.app.conf['FOO'], 10)
+        self.assertEqual(self.app.conf['BAR'], 20)
+
+
     @patch('celery.bin.celery.CeleryCommand.execute_from_commandline')
     def test_start(self, execute):
         self.app.start()

+ 0 - 36
celery/tests/app/test_loaders.py

@@ -10,7 +10,6 @@ from celery import loaders
 from celery.app import app_or_default
 from celery.exceptions import (
     NotConfigured,
-    ImproperlyConfigured,
     CPendingDeprecationWarning,
 )
 from celery.five import items
@@ -23,21 +22,6 @@ from celery.utils.mail import SendmailWarning
 from celery.tests.utils import AppCase, Case
 
 
-class ObjectConfig(object):
-    FOO = 1
-    BAR = 2
-
-object_config = ObjectConfig()
-dict_config = dict(FOO=10, BAR=20)
-
-
-class Object(object):
-
-    def __init__(self, **kwargs):
-        for k, v in items(kwargs):
-            setattr(self, k, v)
-
-
 class DummyLoader(base.BaseLoader):
 
     def read_configuration(self):
@@ -245,26 +229,6 @@ class test_AppLoader(Case):
         self.app = app_or_default()
         self.loader = AppLoader(app=self.app)
 
-    def test_config_from_envvar(self, key='CELERY_HARNESS_CFG1'):
-        self.assertFalse(self.loader.config_from_envvar('HDSAJIHWIQHEWQU',
-                                                        silent=True))
-        with self.assertRaises(ImproperlyConfigured):
-            self.loader.config_from_envvar('HDSAJIHWIQHEWQU', silent=False)
-        os.environ[key] = __name__ + '.object_config'
-        self.assertTrue(self.loader.config_from_envvar(key))
-        self.assertEqual(self.loader.conf['FOO'], 1)
-        self.assertEqual(self.loader.conf['BAR'], 2)
-
-        os.environ[key] = 'unknown_asdwqe.asdwqewqe'
-        with self.assertRaises(ImportError):
-            self.loader.config_from_envvar(key, silent=False)
-        self.assertFalse(self.loader.config_from_envvar(key, silent=True))
-
-        os.environ[key] = __name__ + '.dict_config'
-        self.assertTrue(self.loader.config_from_envvar(key))
-        self.assertEqual(self.loader.conf['FOO'], 10)
-        self.assertEqual(self.loader.conf['BAR'], 20)
-
     def test_on_worker_init(self):
         prev, self.app.conf.CELERY_IMPORTS = (
             self.app.conf.CELERY_IMPORTS, ('subprocess', ))