当前位置: 首页>>代码示例>>Python>>正文


Python DBSession.expunge_all方法代码示例

本文整理汇总了Python中vigilo.models.session.DBSession.expunge_all方法的典型用法代码示例。如果您正苦于以下问题:Python DBSession.expunge_all方法的具体用法?Python DBSession.expunge_all怎么用?Python DBSession.expunge_all使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在vigilo.models.session.DBSession的用法示例。


在下文中一共展示了DBSession.expunge_all方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: runTest

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
    def runTest(self):
        """
        Test de la récupération dans la BDD de l'identifiant d'un
        item (hôte, service de haut niveau, ou service de bas niveau).
        """
        setup_db()
        DBSession.flush()

        host1 = functions.add_host(u'messagerie')
        lls1 = functions.add_lowlevelservice(host1, u'Processes')
        hls1 = functions.add_highlevelservice(u'Connexion')

        # On vérifie que la fonction get_supitem renvoie bien l'identifiant
        # du host1 lorsqu'on lui passe son nom en paramètre.
        self.assertEqual(host1.idhost, SupItem.get_supitem(host1.name, None))

        # On vérifie que la fonction get_supitem renvoie bien l'identifiant
        # du hls1 lorsqu'on lui passe son nom en paramètre.
        self.assertEqual(hls1.idservice,
                         SupItem.get_supitem(None, hls1.servicename))

        # On vérifie que la fonction get_supitem renvoie bien l'identifiant
        # du lls1 lorsqu'on lui passe son nom en paramètre.
        self.assertEqual(lls1.idservice,
                         SupItem.get_supitem(host1.name, lls1.servicename))

        #Nettoyage de la BDD à la fin du test
        del host1
        del lls1
        del hls1
        DBSession.rollback()
        DBSession.expunge_all()
        teardown_db()
开发者ID:vigilo,项目名称:models,代码行数:35,代码来源:test_get_supitem.py

示例2: tearDown

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
    def tearDown(self):
        """ Nettoyage entre les tests """

        print "Dropping the database..."
        DBSession.expunge_all()
        metadata.drop_all()

        self.plugin = None
开发者ID:vigilo,项目名称:turbogears,代码行数:10,代码来源:test_ldap_sync.py

示例3: test_update

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
    def test_update(self):
        """Mise à jour des permissions."""
        for (incode, outcode) in commands._permissions.iteritems():
            print "Test permission %s" % incode
            # On simule l'existence d'une permission avant le début du test.
            # Si le test porte sur la permission "lecture seule", alors la
            # permission existante est en lecture/écriture et vice-versa.
            existing_perm = (incode == "ro") and "w" or "r"
            self._add_permission(self._group1, existing_perm)

            options = NamespaceStub(
                permission=incode,
                object_type=self._type,
                usergroup=self._usergroup.group_name.encode('utf-8'),
                object_group=self._group1.path.encode('utf-8'),
                batch=False,
                update=True,
                commit=False,   # la base de test est en mémoire,
                                # en la committant, on perdrait tout.
            )
            # La demande doit être rejetée car elle rentre
            # en conflit avec les permissions existantes.
            res = commands.cmd_add(options)
            self.assertEquals(res, 0)

            # Une seule permission doit exister en base de données.
            dataperm = DBSession.query(tables.DataPermission).one()
            # Le contenu de la permission doit avoir changé.
            self.assertEquals(self._usergroup.idgroup, dataperm.idusergroup)
            self.assertEquals(self._group1.idgroup, dataperm.idgroup)
            self.assertEquals(outcode, dataperm.access)

            # Suppression de la permission pour le test
            # du type de permission suivant.
            DBSession.delete(dataperm)
            DBSession.flush()
            DBSession.expunge_all() # Nécessaire pour éviter que l'ancienne
                                    # DataPerm ne soit "vue" à l'itération
                                    # suivante.
            dataperm = DBSession.query(tables.DataPermission).first()
            self.assertEquals(dataperm, None)
开发者ID:vigilo,项目名称:models,代码行数:43,代码来源:test_vigilo_permissions_add.py

示例4: tearDown

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
 def tearDown(self):
     DBSession.expunge_all()
     teardown_db()
     shutil.rmtree(self.tmpdir)
     settings["vigiconf"]["confdir"] = self.old_conf_path
     conf.hostsConf = {}
开发者ID:vigilo,项目名称:vigiconf,代码行数:8,代码来源:helpers.py

示例5: tearDown

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
 def tearDown(self):
     print "Dropping all tables"
     transaction.abort()
     DBSession.expunge_all()
     teardown_db()
开发者ID:vigilo,项目名称:turbogears,代码行数:7,代码来源:utils.py

示例6: tearDown

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
 def tearDown(self):
     """Nettoyage à l'issue des tests."""
     DBSession.rollback()
     DBSession.expunge_all()
     teardown_db()
     super(TestSupItemAbstraction, self).tearDown()
开发者ID:vigilo,项目名称:models,代码行数:8,代码来源:test_service.py

示例7: tearDown

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
 def tearDown(self):
     """Finalisation du test."""
     DBSession.expunge_all()
     transaction.abort()
     teardown_db()
开发者ID:vigilo,项目名称:models,代码行数:7,代码来源:test_vigilo_permissions_remove.py

示例8: tearDown

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
 def tearDown(self):
     super(TestSvcHostDownRule, self).tearDown()
     DBSession.flush()
     DBSession.expunge_all()
     helpers.teardown_db()
     return defer.succeed(None)
开发者ID:vigilo,项目名称:correlator,代码行数:8,代码来源:test_rule.py

示例9: tearDown

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
 def tearDown(self):
     DBSession.rollback()
     DBSession.expunge_all()
     teardown_db()
     transaction.begin()
开发者ID:vigilo,项目名称:models,代码行数:7,代码来源:test_migration.py

示例10: teardown_db

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
def teardown_db():
    """Supprime toutes les tables du modèle de la BDD."""
    DBSession.expunge_all()
    DBSession.rollback()
    DBSession.flush()
    metadata.drop_all()
开发者ID:vigilo,项目名称:correlator,代码行数:8,代码来源:helpers.py

示例11: tearDown

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
 def tearDown(self):
     DBSession.expunge_all()
     transaction.abort()
     teardown_db()
开发者ID:vigilo,项目名称:models,代码行数:6,代码来源:test_purge_vigiboard.py

示例12: tearDown

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
 def tearDown(self):
     """Nettoyage après chaque test."""
     transaction.abort()
     DBSession.expunge_all()
     super(TestDetailsPluginMapsHostLimited, self).tearDown()
开发者ID:vigilo,项目名称:vigiboard,代码行数:7,代码来源:test_details_plugin_maps.py

示例13: handle_alert

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
    def handle_alert(self, host, new_state, preds=None, succs=None):
        """
        Simule l'arrivée d'une alerte concernant un hôte
        avec l'état donné en argument.
        """
        new_state = unicode(new_state)

        if preds is None:
            preds = []
        if succs is None:
            succs = []

        self.ts += 1
        info_dictionary = {
            'id': self.ts,
            #'timestamp': self.ts,
            'host': host.name,
            'service': u'',
            'state': new_state,
            'message': new_state,
        }
        info_dictionary['timestamp'] = datetime.fromtimestamp(self.ts)

        ctx = self.context_factory(self.ts)


        # Création Event.
        event = DBSession.query(tables.Event).filter(
            tables.Event.idsupitem == host.idhost).first()
        if event is None:
            event = tables.Event(idsupitem=host.idhost)

        event.current_state = tables.StateName.statename_to_value(
                                info_dictionary['state'])
        event.message = unicode(info_dictionary['message'])
        event.timestamp = info_dictionary['timestamp']
        DBSession.add(event)
        DBSession.flush()

        open_aggr = DBSession.query(
                tables.CorrEvent.idcorrevent
            ).filter(tables.CorrEvent.idcause == event.idevent
            ).scalar()
        # open_aggr vaut None si aucun événement corrélé
        # n'existe pour le moment pour l'élément.
        # Le contexte doit contenir 0 à la place pour ce cas.
        open_aggr = open_aggr or 0

        # On passe par une DeferredList pour garantir l'exécution
        # de tous les Deferred comme étant un seul bloc logique.
        yield defer.DeferredList([
            ctx.set('hostname', host.name),
            ctx.set('servicename', ''),
            ctx.set('statename', new_state),
            ctx.set('raw_event_id', event.idevent),
            ctx.set('idsupitem', host.idhost),
            ctx.set('payload', None),
            ctx.set('timestamp', info_dictionary['timestamp']),
            ctx.set('predecessors_aggregates', preds),
            ctx.set('successors_aggregates', succs),
            ctx.setShared('open_aggr:%s' % host.idhost, open_aggr),
        ])

        res = yield self.corrbuilder.make_correvent(info_dictionary)

        idcorrevent = DBSession.query(
                tables.CorrEvent.idcorrevent
            ).filter(tables.CorrEvent.idcause == event.idevent
            ).scalar()
        # Le expunge_all() évite que SQLAlchemy ne garde en cache
        # la valeur du .events des CorrEvents.
        DBSession.expunge_all()
        defer.returnValue( (res, idcorrevent) )
开发者ID:vigilo,项目名称:correlator,代码行数:75,代码来源:test_correvent5.py

示例14: tearDown

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
 def tearDown(self):
     """Tear down the fixture used to test the model."""
     del self.obj
     DBSession.rollback()
     DBSession.expunge_all()
     teardown_db()
开发者ID:vigilo,项目名称:models,代码行数:8,代码来源:controller.py

示例15: tearDown

# 需要导入模块: from vigilo.models.session import DBSession [as 别名]
# 或者: from vigilo.models.session.DBSession import expunge_all [as 别名]
 def tearDown(self):
     """Call after every test case."""
     DBSession.rollback()
     DBSession.expunge_all()
     teardown_db()
开发者ID:vigilo,项目名称:models,代码行数:7,代码来源:test_cascade.py


注:本文中的vigilo.models.session.DBSession.expunge_all方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。