Ejemplo n.º 1
0
    def _init_ptah(self, handler=None, *args, **kw):
        config.initialize(self.p_config, ("ptah", self.__class__.__module__), initsettings=False)
        config.initialize_settings(self._settings, self.p_config)

        # create sql tables
        Base = sqlahelper.get_base()
        Base.metadata.drop_all()
        Base.metadata.create_all()
        transaction.commit()
Ejemplo n.º 2
0
    def _init_ptah(self, settings=None, handler=None, *args, **kw):
        if settings is None:
            settings = self._settings
        config.initialize(('ptah', self.__class__.__module__))
        config.initialize_settings(settings, self.p_config)

        # create sql tables
        Base = sqlahelper.get_base()
        Base.metadata.drop_all()
        Base.metadata.create_all()
        transaction.commit()
Ejemplo n.º 3
0
    def _init_ptah(self, settings=None, handler=None, *args, **kw):
        st = dict(self._settings)
        if settings is not None:
            st.update(settings)
        config.initialize(('ptah', self.__class__.__module__),
                          registry = self.p_config.registry)
        config.initialize_settings(st, self.p_config)

        # create sql tables
        Base = sqlahelper.get_base()
        Base.metadata.drop_all()
        Base.metadata.create_all()
        transaction.commit()
Ejemplo n.º 4
0
    def test_settings_initialize_events_exceptions(self):
        sm = config.registry

        events = []
        err = TypeError()
        def h1(ev):
            raise err

        sm.registerHandler(h1, (config.SettingsInitializing,))
        try:
            config.initialize_settings({}, object())
        except Exception, exc:
            pass
Ejemplo n.º 5
0
    def test_settings_initialize_load_default(self):
        node1 = config.SchemaNode(
                colander.Str(),
                name = 'node1',
                default = 'default1')

        node2 = config.SchemaNode(
                colander.Int(),
                name = 'node2',
                default = 10)

        group = config.register_settings('group', node1, node2)
        self._init_ptah()

        config.initialize_settings({'group.node1': 'setting from ini'})

        self.assertEqual(group['node1'], 'setting from ini')
        self.assertEqual(group['node2'], 10)
Ejemplo n.º 6
0
    def test_settings_initialize_load_settings_include(self):
        path = os.path.join(self.dir, 'settings.cfg')
        f = open(path, 'wb')
        f.write('[DEFAULT]\ngroup.node1 = value\n\n')
        f.close()

        node1 = config.SchemaNode(
                colander.Str(),
                name = 'node1',
                default = 'default1')

        node2 = config.SchemaNode(
                colander.Int(),
                name = 'node2',
                default = 10)

        group = config.register_settings('group', node1, node2)
        self._init_ptah()

        config.initialize_settings({'include': path})

        self.assertEqual(group['node1'], 'value')
        self.assertEqual(group['node2'], 10)
Ejemplo n.º 7
0
    def test_settings_fs_watcher(self):
        path = os.path.join(self.dir, 'settings.cfg')
        f = open(path, 'wb')
        f.write('[DEFAULT]\ngroup.node1 = value\n\n')
        f.close()

        node1 = config.SchemaNode(
                colander.Str(),
                name = 'node1',
                default = 'default1')

        group = config.register_settings('group', node1)
        self._init_ptah()

        class Config(object):
            def begin(self):
                pass
            def end(self):
                pass

        config.initialize_settings({'settings': path}, config=Config())

        self.assertTrue(
            isinstance(config.Settings.loader.watcher, iNotifyWatcher))
        self.assertEqual(group['node1'], 'value')

        f = open(path, 'wb')
        f.write('[DEFAULT]\ngroup.node1 = new_value\n\n')
        f.close()
        time.sleep(0.2)

        self.assertEqual(group['node1'], 'new_value')
        self.assertTrue(config.Settings.loader.watcher.started)

        shutdown()
        self.assertFalse(config.Settings.loader.watcher.started)
Ejemplo n.º 8
0
    def test_settings_initialize_events(self):
        sm = config.registry

        events = []
        def h1(ev):
            events.append(ev)
        def h2(ev):
            events.append(ev)

        sm.registerHandler(h1, (config.SettingsInitializing,))
        sm.registerHandler(h2, (config.SettingsInitialized,))

        self.assertTrue(config.Settings.loader is None)

        conf = object()
        config.initialize_settings({}, conf)

        self.assertTrue(isinstance(events[0], config.SettingsInitializing))
        self.assertTrue(isinstance(events[1], config.SettingsInitialized))

        self.assertTrue(events[0].config is conf)
        self.assertTrue(events[1].config is conf)

        self.assertTrue(isinstance(config.Settings.loader, FileStorage))
Ejemplo n.º 9
0
 def _init_ptah(self, settings={}, handler=None, *args, **kw):
     config.initialize(self.p_config, ('ptah', self.__class__.__module__),
                       initsettings = False)
     config.initialize_settings(settings, self.p_config)
     config.start(self.p_config)
Ejemplo n.º 10
0
 def _init_ptah(self, settings={}, handler=None, *args, **kw):
     config.initialize(('ptah', self.__class__.__module__),
                       reg = Components('test'))
     config.initialize_settings(settings, self.p_config)
     config.start(self.p_config)
Ejemplo n.º 11
0
    def test_settings_initialize_only_once(self):
        config.initialize_settings({})

        self.assertRaises(
            RuntimeError,
            config.initialize_settings, {})