Exemple #1
0
    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()
Exemple #2
0
 def do_get_dependencies(self):
     """Création des dépendances du test."""
     ModelTest.do_get_dependencies(self)
     hls = functions.add_highlevelservice(u'HLS')
     host = functions.add_host(u'myhost')
     path = ImpactedPath(supitem=host)
     DBSession.add(path)
     DBSession.flush()
     return dict(path=path, hls=hls)
 def create_deps(self):
     hls = functions.add_highlevelservice(u'foobarbaz')
     # Le service appartient au groupe "Child".
     parent = functions.add_supitemgroup(u'Parent')
     child = functions.add_supitemgroup(u'Child', parent)
     functions.add_host2group(hls, child)
     # Positionnement des permissions.
     functions.add_supitemgrouppermission(parent, u'indirect')
     functions.add_supitemgrouppermission(child, u'direct')
Exemple #4
0
    def do_get_dependencies(self):
        """Generate some data for the test"""
        ModelTest.do_get_dependencies(self)

        # Création du groupe de cartes racine.
        functions.add_mapgroup(u'Root')

        # Création des objets nécessaires  aux relations.
        new_map = functions.add_map(u'Carte 1')
        service = functions.add_highlevelservice(u'myservice')
        return dict(map=new_map, service=service)
Exemple #5
0
 def test_hls_mapnode(self):
     """Suppression des mapnodes d'un hls supprimé (#57)"""
     # Mettre localhost sur une carte
     fct.add_host(u"localhost")
     s = fct.add_highlevelservice("testservice")
     testmap = fct.add_map(u"Test map")
     fct.add_node_hls(s, "testservice", testmap)
     DBSession.flush()
     DBSession.delete(s)
     DBSession.flush()
     # On vérifie que la suppression du hls a bien supprimé ses
     # représentations cartographiques
     mn_count = DBSession.query(tables.MapNode).count()
     self.assertEquals(mn_count, 0)
     mns_count = DBSession.query(tables.MapNodeService).count()
     self.assertEquals(mns_count, 0)
     mnlls_count = DBSession.query(tables.MapNodeHls).count()
     self.assertEquals(mnlls_count, 0)
    def setUp(self):
        setup_db()
        two_days_ago = datetime.fromtimestamp(time.time() - 2 * 86400)

        localhost = fn.add_host('localhost')
        localhost2 = fn.add_host('localhost2')
        localhost3 = fn.add_host('localhost3')
        localhost4 = fn.add_host('localhost4')

        hls = fn.add_highlevelservice('hls')

        fn.add_correvent(
            [fn.add_event(localhost, 'UP', 'foo')],
            status=tables.CorrEvent.ACK_CLOSED,
        )

        fn.add_correvent(
            [fn.add_event(localhost2, 'UP', 'foo')],
            status=tables.CorrEvent.ACK_CLOSED,
            timestamp=two_days_ago,
        )

        fn.add_correvent(
            [fn.add_event(localhost3, 'UP', 'foo')],
            status=tables.CorrEvent.ACK_NONE,
        )

        fn.add_correvent(
            [fn.add_event(localhost4, 'UP', 'foo')],
            status=tables.CorrEvent.ACK_NONE,
            timestamp=two_days_ago,
        )

        DBSession.add(tables.HLSHistory(
            hls=hls,
            idstatename=tables.StateName.statename_to_value(u'OK'),
            timestamp=two_days_ago,
        ))

        DBSession.add(tables.HLSHistory(
            hls=hls,
            idstatename=tables.StateName.statename_to_value(u'OK'),
            timestamp=datetime.now(),
        ))
    def setUp(self):
        """Initialisation d'une réplique du RuleDispatcher."""
        self.mp = MessagePublisher(
                helpers.settings['correlator']['nagios_hls_host'], {})
        self.mp.sendMessage = Mock()

        # Initialisation de la BDD
        helpers.setup_db()

        # Ajout des noms d'états dans la BDD
        helpers.populate_statename()

        # Ajout d'un hôte dans la BDD
        self.host1 = functions.add_host(u'host1.example.com')

        # Ajout d'un service de haut niveau dans la BDD
        self.hls1 = functions.add_highlevelservice(u'Connexion')

        # Ajout d'un service de bas niveau dans la BDD
        self.lls1 = functions.add_lowlevelservice(self.host1, u'Processes')

        # Création d'un timestamp à partir de l'heure actuelle
        self.timestamp = datetime.now()
        self.int_timestamp = int(mktime(self.timestamp.timetuple()))
Exemple #8
0
 def do_get_dependencies(self):
     """Création des dépendances du test."""
     super(TestHLSHistory, self).do_get_dependencies()
     hls = functions.add_highlevelservice(u"HLS")
     idstatename = StateName.statename_to_value(u"WARNING")
     return dict(hls=hls, idstatename=idstatename)
 def make_dependencies(self):
     """Création de quelques dépendances dans la BDD."""
     host = functions.add_host(u'server.example.com')
     functions.add_lowlevelservice(host, u'Load')
     functions.add_highlevelservice(u'Load')
Exemple #10
0
 def test_get_abstract_service(self):
     """Une interrogation sur Service ne doit pas retourner un Host."""
     functions.add_host(u'myhost')
     functions.add_highlevelservice(u'hls', message="foo")
     supitem = DBSession.query(Service).one()
     self.assertTrue(isinstance(supitem, HighLevelService))
 def _insert_test_data(self):
     """Création de quelques dépendances dans la BDD."""
     host = functions.add_host(u'server.example.com')
     functions.add_lowlevelservice(host, u'Load')
     functions.add_highlevelservice(u'Load')