Exemplo n.º 1
0
 def _reset_global_config(self):
     from pecan import configuration
     configuration.set_config(
         dict(configuration.initconf()),
         overwrite=True
     )
     os.environ.pop('PECAN_CONFIG', None)
Exemplo n.º 2
0
def reset_global_config():
    """
    When tests alter application configurations they can get sticky and pollute
    other tests that might rely on a pristine configuration. This helper will
    reset the config by overwriting it with ``pecan.configuration.DEFAULT``.
    """
    from pecan import configuration
    configuration.set_config(dict(configuration.initconf()), overwrite=True)
    os.environ.pop('PECAN_CONFIG', None)
Exemplo n.º 3
0
def reset_global_config():
    """
    When tests alter application configurations they can get sticky and pollute
    other tests that might rely on a pristine configuration. This helper will
    reset the config by overwriting it with ``pecan.configuration.DEFAULT``.
    """
    from pecan import configuration
    configuration.set_config(
        dict(configuration.initconf()),
        overwrite=True
    )
    os.environ.pop('PECAN_CONFIG', None)
Exemplo n.º 4
0
 def test_queue_parse(self):
     """
     Ensure that if the configuration file includes an
     explicit list of queues, it's used for CELERYD_QUEUES
     """        
     conf = configuration.initconf()
     conf.update_with_module('queues')        
     
     c = CeleryCommand('celeryd')
     c.config = conf
     
     self.assertEqual(c.determine_queues(), 'example,testing123')
Exemplo n.º 5
0
    def test_celery_imports_module(self):
        """
        Ensure that if CELERY_IMPORTS is specified manually in pecan config,
        it's actually used
        """     
        conf = configuration.initconf()
        conf.update_with_module('standard')

        from pecancelery import conf
        app = celery.Celery()
        for k, v in app.loader.conf.items():
            if k == 'CELERY_IMPORTS':
                self.assertEqual(dict(conf)[k], ('package.module.tasks',))
Exemplo n.º 6
0
    def test_defaults(self):
        """
        Ensure that if the configuration file includes no celery
        config, the parsed config object is identical to
        celery's default config object
        """
        conf = configuration.initconf()
        conf.update_with_module('empty')

        from pecancelery import conf
        app = celery.Celery()
        for k, v in app.loader.conf.items():
            self.assertEqual(dict(conf)[k], v)
Exemplo n.º 7
0
    def test_update_set_config(self):
        """Update an empty configuration with the default values"""

        conf = configuration.initconf()
        conf.update_with_module("config")

        self.assertTrue(conf.app.debug)
        self.assertEqual(conf.app.root, None)
        self.assertEqual(conf.app.template_path, "myproject/templates")
        self.assertEqual(conf.app.static_root, "public")

        self.assertEqual(conf.server.host, "1.1.1.1")
        self.assertEqual(conf.server.port, "8081")
Exemplo n.º 8
0
    def test_update_set_default_config(self):
        """Update an empty configuration with the default values"""

        conf = configuration.initconf()
        conf.update_with_module("empty")

        self.assertFalse(conf.app.debug)
        self.assertEqual(conf.app.root, None)
        self.assertEqual(conf.app.template_path, "")
        self.assertEqual(conf.app.static_root, "public")

        self.assertEqual(conf.server.host, "0.0.0.0")
        self.assertEqual(conf.server.port, "8080")
Exemplo n.º 9
0
    def test_config_to_dict(self):
        from pecan import configuration
        conf = configuration.initconf()

        assert isinstance(conf, configuration.Config)

        to_dict = conf.to_dict()

        assert isinstance(to_dict, dict)
        assert to_dict['server']['host'] == '0.0.0.0'
        assert to_dict['server']['port'] == '8080'
        assert to_dict['app']['modules'] == []
        assert to_dict['app']['root'] is None
        assert to_dict['app']['static_root'] == 'public'
        assert to_dict['app']['template_path'] == ''
Exemplo n.º 10
0
    def test_update_set_default_config(self):
        """Update an empty configuration with the default values"""
        from pecan import configuration

        conf = configuration.initconf()
        conf.update(
            configuration.conf_from_file(
                os.path.join(__here__, 'config_fixtures/empty.py')))

        self.assertEqual(conf.app.root, None)
        self.assertEqual(conf.app.template_path, '')
        self.assertEqual(conf.app.static_root, 'public')

        self.assertEqual(conf.server.host, '0.0.0.0')
        self.assertEqual(conf.server.port, '8080')
Exemplo n.º 11
0
    def test_config_to_dict(self):
        from pecan import configuration
        conf = configuration.initconf()

        assert isinstance(conf, configuration.Config)

        to_dict = conf.to_dict()

        assert isinstance(to_dict, dict)
        assert to_dict['server']['host'] == '0.0.0.0'
        assert to_dict['server']['port'] == '8080'
        assert to_dict['app']['modules'] == []
        assert to_dict['app']['root'] is None
        assert to_dict['app']['static_root'] == 'public'
        assert to_dict['app']['template_path'] == ''
Exemplo n.º 12
0
    def test_single_config(self):
        """
        Ensure that if the configuration file includes celery-specific
        config, the parsed config object includes it
        """
        conf = configuration.initconf()
        conf.update_with_module('empty')

        from pecancelery import conf
        app = celery.Celery()
        for k, v in app.loader.conf.items():
            if k == 'BROKER_HOST':
                self.assertEqual(dict(conf)[k], 'example.com')
            else:
                self.assertEqual(dict(conf)[k], v)        
Exemplo n.º 13
0
    def test_update_set_default_config(self):
        """Update an empty configuration with the default values"""
        from pecan import configuration

        conf = configuration.initconf()
        conf.update(configuration.conf_from_file(os.path.join(
            __here__,
            'config_fixtures/empty.py'
        )))

        self.assertEqual(conf.app.root, None)
        self.assertEqual(conf.app.template_path, '')
        self.assertEqual(conf.app.static_root, 'public')

        self.assertEqual(conf.server.host, '0.0.0.0')
        self.assertEqual(conf.server.port, '8080')
Exemplo n.º 14
0
    def test_config_to_dict_prefixed(self):
        from pecan import configuration
        """Add a prefix for keys"""
        conf = configuration.initconf()

        assert isinstance(conf, configuration.Config)

        to_dict = conf.to_dict('prefix_')

        assert isinstance(to_dict, dict)
        assert to_dict['prefix_server']['prefix_host'] == '0.0.0.0'
        assert to_dict['prefix_server']['prefix_port'] == '8080'
        assert to_dict['prefix_app']['prefix_modules'] == []
        assert to_dict['prefix_app']['prefix_root'] is None
        assert to_dict['prefix_app']['prefix_static_root'] == 'public'
        assert to_dict['prefix_app']['prefix_template_path'] == ''
Exemplo n.º 15
0
    def test_config_to_dict_prefixed(self):
        from pecan import configuration
        """Add a prefix for keys"""
        conf = configuration.initconf()

        assert isinstance(conf, configuration.Config)

        to_dict = conf.to_dict('prefix_')

        assert isinstance(to_dict, dict)
        assert to_dict['prefix_server']['prefix_host'] == '0.0.0.0'
        assert to_dict['prefix_server']['prefix_port'] == '8080'
        assert to_dict['prefix_app']['prefix_modules'] == []
        assert to_dict['prefix_app']['prefix_root'] is None
        assert to_dict['prefix_app']['prefix_static_root'] == 'public'
        assert to_dict['prefix_app']['prefix_template_path'] == ''
Exemplo n.º 16
0
    def test_config_to_dict_nested(self):
        from pecan import configuration
        """have more than one level nesting and convert to dict"""
        conf = configuration.initconf()
        nested = {'one': {'two': 2}}
        conf['nested'] = nested

        to_dict = conf.to_dict()

        assert isinstance(to_dict, dict)
        assert to_dict['server']['host'] == '0.0.0.0'
        assert to_dict['server']['port'] == '8080'
        assert to_dict['app']['modules'] == []
        assert to_dict['app']['root'] is None
        assert to_dict['app']['static_root'] == 'public'
        assert to_dict['app']['template_path'] == ''
        assert to_dict['nested']['one']['two'] == 2
Exemplo n.º 17
0
    def test_config_as_dict(self):
        conf = configuration.initconf()

        assert isinstance(conf, configuration.Config)

        as_dict = conf.as_dict()

        assert isinstance(as_dict, dict)
        assert as_dict['server']['host']         == '0.0.0.0'
        assert as_dict['server']['port']         == '8080'
        assert as_dict['app']['debug']           == False
        assert as_dict['app']['errors']          == {}
        assert as_dict['app']['force_canonical'] == True
        assert as_dict['app']['modules']         == []
        assert as_dict['app']['root']            == None
        assert as_dict['app']['static_root']     == 'public'
        assert as_dict['app']['template_path']   == ''
Exemplo n.º 18
0
    def test_config_to_dict_nested(self):
        from pecan import configuration
        """have more than one level nesting and convert to dict"""
        conf = configuration.initconf()
        nested = {'one': {'two': 2}}
        conf['nested'] = nested

        to_dict = conf.to_dict()

        assert isinstance(to_dict, dict)
        assert to_dict['server']['host'] == '0.0.0.0'
        assert to_dict['server']['port'] == '8080'
        assert to_dict['app']['modules'] == []
        assert to_dict['app']['root'] is None
        assert to_dict['app']['static_root'] == 'public'
        assert to_dict['app']['template_path'] == ''
        assert to_dict['nested']['one']['two'] == 2
Exemplo n.º 19
0
    def test_config_as_dict(self):
        conf = configuration.initconf()

        assert isinstance(conf, configuration.Config)

        as_dict = conf.as_dict()

        assert isinstance(as_dict, dict)
        assert as_dict["server"]["host"] == "0.0.0.0"
        assert as_dict["server"]["port"] == "8080"
        assert as_dict["app"]["debug"] == False
        assert as_dict["app"]["errors"] == {}
        assert as_dict["app"]["force_canonical"] == True
        assert as_dict["app"]["modules"] == []
        assert as_dict["app"]["root"] == None
        assert as_dict["app"]["static_root"] == "public"
        assert as_dict["app"]["template_path"] == ""
Exemplo n.º 20
0
    def test_update_force_dict(self):
        """Update an empty configuration with the default values"""
        conf = configuration.initconf()
        conf.update_with_module('forcedict')

        self.assertFalse(conf.app.debug)
        self.assertEqual(conf.app.root, None)
        self.assertEqual(conf.app.template_path, '')
        self.assertEqual(conf.app.static_root, 'public')

        self.assertEqual(conf.server.host, '0.0.0.0')
        self.assertEqual(conf.server.port, '8080')

        self.assertTrue(isinstance(conf.beaker, dict))
        self.assertEqual(conf.beaker['session.key'], 'key')
        self.assertEqual(conf.beaker['session.type'], 'cookie')
        self.assertEqual(conf.beaker['session.validate_key'], '1a971a7df182df3e1dec0af7c6913ec7')
        self.assertEqual(conf.beaker.get('__force_dict__'), None)
Exemplo n.º 21
0
    def test_config_as_dict_prefixed(self):
        """Add a prefix for keys"""
        conf = configuration.initconf()

        assert isinstance(conf, configuration.Config)

        as_dict = conf.as_dict('prefix_')

        assert isinstance(as_dict, dict)
        assert as_dict['prefix_server']['prefix_host']         == '0.0.0.0'
        assert as_dict['prefix_server']['prefix_port']         == '8080'
        assert as_dict['prefix_app']['prefix_debug']           == False
        assert as_dict['prefix_app']['prefix_errors']          == {}
        assert as_dict['prefix_app']['prefix_force_canonical'] == True
        assert as_dict['prefix_app']['prefix_modules']         == []
        assert as_dict['prefix_app']['prefix_root']            == None
        assert as_dict['prefix_app']['prefix_static_root']     == 'public'
        assert as_dict['prefix_app']['prefix_template_path']   == ''
Exemplo n.º 22
0
    def test_update_force_dict(self):
        """Update an empty configuration with the default values"""
        conf = configuration.initconf()
        conf.update_with_module("forcedict")

        self.assertFalse(conf.app.debug)
        self.assertEqual(conf.app.root, None)
        self.assertEqual(conf.app.template_path, "")
        self.assertEqual(conf.app.static_root, "public")

        self.assertEqual(conf.server.host, "0.0.0.0")
        self.assertEqual(conf.server.port, "8080")

        self.assertTrue(isinstance(conf.beaker, dict))
        self.assertEqual(conf.beaker["session.key"], "key")
        self.assertEqual(conf.beaker["session.type"], "cookie")
        self.assertEqual(conf.beaker["session.validate_key"], "1a971a7df182df3e1dec0af7c6913ec7")
        self.assertEqual(conf.beaker.get("__force_dict__"), None)
Exemplo n.º 23
0
    def test_config_as_dict_prefixed(self):
        """Add a prefix for keys"""
        conf = configuration.initconf()

        assert isinstance(conf, configuration.Config)

        as_dict = conf.as_dict("prefix_")

        assert isinstance(as_dict, dict)
        assert as_dict["prefix_server"]["prefix_host"] == "0.0.0.0"
        assert as_dict["prefix_server"]["prefix_port"] == "8080"
        assert as_dict["prefix_app"]["prefix_debug"] == False
        assert as_dict["prefix_app"]["prefix_errors"] == {}
        assert as_dict["prefix_app"]["prefix_force_canonical"] == True
        assert as_dict["prefix_app"]["prefix_modules"] == []
        assert as_dict["prefix_app"]["prefix_root"] == None
        assert as_dict["prefix_app"]["prefix_static_root"] == "public"
        assert as_dict["prefix_app"]["prefix_template_path"] == ""
Exemplo n.º 24
0
    def test_config_as_dict_nested(self):
        """have more than one level nesting and convert to dict"""
        conf = configuration.initconf()
        nested = {"one": {"two": 2}}
        conf["nested"] = nested

        as_dict = conf.as_dict()

        assert isinstance(as_dict, dict)
        assert as_dict["server"]["host"] == "0.0.0.0"
        assert as_dict["server"]["port"] == "8080"
        assert as_dict["app"]["debug"] == False
        assert as_dict["app"]["errors"] == {}
        assert as_dict["app"]["force_canonical"] == True
        assert as_dict["app"]["modules"] == []
        assert as_dict["app"]["root"] == None
        assert as_dict["app"]["static_root"] == "public"
        assert as_dict["app"]["template_path"] == ""
        assert as_dict["nested"]["one"]["two"] == 2
Exemplo n.º 25
0
    def test_config_as_dict_nested(self):
        """have more than one level nesting and convert to dict"""
        conf = configuration.initconf()
        nested = {'one':{'two':2}}
        conf['nested'] = nested

        as_dict = conf.as_dict()

        assert isinstance(as_dict, dict)
        assert as_dict['server']['host']         == '0.0.0.0'
        assert as_dict['server']['port']         == '8080'
        assert as_dict['app']['debug']           == False
        assert as_dict['app']['errors']          == {}
        assert as_dict['app']['force_canonical'] == True
        assert as_dict['app']['modules']         == []
        assert as_dict['app']['root']            == None
        assert as_dict['app']['static_root']     == 'public'
        assert as_dict['app']['template_path']   == ''
        assert as_dict['nested']['one']['two']   == 2
Exemplo n.º 26
0
    def test_update_force_dict(self):
        """Update an empty configuration with the default values"""
        from pecan import configuration
        conf = configuration.initconf()
        conf.update(
            configuration.conf_from_file(
                os.path.join(__here__, 'config_fixtures/forcedict.py')))

        self.assertEqual(conf.app.root, None)
        self.assertEqual(conf.app.template_path, '')
        self.assertEqual(conf.app.static_root, 'public')

        self.assertEqual(conf.server.host, '0.0.0.0')
        self.assertEqual(conf.server.port, '8080')

        self.assertTrue(isinstance(conf.beaker, dict))
        self.assertEqual(conf.beaker['session.key'], 'key')
        self.assertEqual(conf.beaker['session.type'], 'cookie')
        self.assertEqual(conf.beaker['session.validate_key'],
                         '1a971a7df182df3e1dec0af7c6913ec7')
        self.assertEqual(conf.beaker.get('__force_dict__'), None)
Exemplo n.º 27
0
    def test_update_force_dict(self):
        """Update an empty configuration with the default values"""
        from pecan import configuration
        conf = configuration.initconf()
        conf.update(configuration.conf_from_file(os.path.join(
            __here__,
            'config_fixtures/forcedict.py'
        )))

        self.assertEqual(conf.app.root, None)
        self.assertEqual(conf.app.template_path, '')
        self.assertEqual(conf.app.static_root, 'public')

        self.assertEqual(conf.server.host, '0.0.0.0')
        self.assertEqual(conf.server.port, '8080')

        self.assertTrue(isinstance(conf.beaker, dict))
        self.assertEqual(conf.beaker['session.key'], 'key')
        self.assertEqual(conf.beaker['session.type'], 'cookie')
        self.assertEqual(
            conf.beaker['session.validate_key'],
            '1a971a7df182df3e1dec0af7c6913ec7'
        )
        self.assertEqual(conf.beaker.get('__force_dict__'), None)
Exemplo n.º 28
0
 def tearDown(self):
     from pecan import configuration
     configuration.set_config(
         dict(configuration.initconf()),
         overwrite=True
     )
Exemplo n.º 29
0
 def test_config_set_from_file(self):
     path = os.path.join(os.path.dirname(__file__), "test_config", "empty.py")
     configuration.set_config(path)
     assert list(_runtime_conf.server) == list(configuration.initconf().server)
Exemplo n.º 30
0
 def test_update_config_with_dict(self):
     conf = configuration.initconf()
     d = {"attr": True}
     conf["attr"] = d
     self.assertTrue(conf.attr.attr)
Exemplo n.º 31
0
 def test_update_config_with_dict(self):
     from pecan import configuration
     conf = configuration.initconf()
     d = {'attr': True}
     conf['attr'] = d
     self.assertTrue(conf.attr.attr)
Exemplo n.º 32
0
 def tearDown(self):
     from pecan import configuration
     configuration.set_config(dict(configuration.initconf()),
                              overwrite=True)
Exemplo n.º 33
0
    def test_config_dirname(self):
        from pecan import default_config

        conf = configuration.initconf()
        conf["path"] = "%(confdir)s"
        self.assertEqual(conf.path, os.path.dirname(default_config.__file__))
Exemplo n.º 34
0
 def test_update_config_with_dict(self):
     from pecan import configuration
     conf = configuration.initconf()
     d = {'attr': True}
     conf['attr'] = d
     self.assertTrue(conf.attr.attr)
Exemplo n.º 35
0
 def _reset_global_config(self):
     from pecan import configuration
     configuration.set_config(dict(configuration.initconf()),
                              overwrite=True)
     os.environ.pop('PECAN_CONFIG', None)