Project

General

Profile

Revision 9a05a743

ID9a05a74302739e67d6a15b0471e5e754f212c44e
Parent 6c1a455f
Child c346507a

Added by Francois POIROTTE over 12 years ago

Nettoyage des tests unitaires.

Utilisation des fonctions outils définies vigilo.models.demo.functions
lorsque c'est possible, afin de réduire la taille des tests et de
privilégier la réutilisation du code existant.

Ce changement précède un autre gros changement dans le modèle (pour le
ticket #918) et vise à diminuer la quantité de changements (pour
faciliter la relecture).

Change-Id: I84f1fb3b4b2306f2ef3a4b0070c4fe5330fa4906
Reviewed-on: https://vigilo-dev.si.c-s.fr/review/482
Tested-by: Build system <>
Reviewed-by: Aurelien BOMPARD <>

View differences:

vigiboard/tests/functional/plugins/test_details_plugin.py
12 12

  
13 13
from vigiboard.tests import TestController
14 14
from vigilo.models.session import DBSession
15
from vigilo.models.demo import functions
15 16
from vigilo.models.tables import SupItemGroup, User, UserGroup, \
16 17
                            Permission, DataPermission, StateName, \
17 18
                            LowLevelService, Event, CorrEvent, Host
......
30 31
    """
31 32
    timestamp = datetime.now()
32 33

  
33
    hostgroup = SupItemGroup(name=u'foo', parent=None)
34
    DBSession.add(hostgroup)
35

  
36
    host = Host(
37
        name=u'bar',
38
        description=u'',
39
        hosttpl=u'',
40
        address=u'127.0.0.1',
41
        snmpport=42,
42
        snmpcommunity=u'public',
43
        snmpversion=u'3',
44
        weight=42,
45
    )
46
    DBSession.add(host)
47
    DBSession.flush()
48

  
34
    hostgroup = functions.add_supitemgroup(u'foo')
35
    host = functions.add_host(u'bar')
49 36
    hostgroup.supitems.append(host)
50 37
    DBSession.flush()
51 38

  
52
    servicegroup = SupItemGroup(name=u'bar', parent=None)
53
    DBSession.add(servicegroup)
54

  
55
    service = LowLevelService(
56
        host=host,
57
        command=u'',
58
        weight=42,
59
        servicename=u'baz',
60
    )
61
    DBSession.add(service)
62
    DBSession.flush()
63

  
39
    servicegroup = functions.add_supitemgroup(u'bar')
40
    service = functions.add_lowlevelservice(host, u'baz')
64 41
    servicegroup.supitems.append(service)
65 42
    DBSession.flush()
66 43

  
67
    event = Event(
68
        timestamp=timestamp,
69
        current_state=StateName.statename_to_value(u'WARNING'),
70
        message=u'Hello world',
71
    )
72 44
    if return_service:
73
        event.supitem = service
45
        event = functions.add_event(service, u'WARNING', u'', timestamp)
74 46
    else:
75
        event.supitem = host
76
    DBSession.add(event)
77
    DBSession.flush()
47
        event = functions.add_event(host, u'WARNING', u'', timestamp)
78 48

  
79
    correvent = CorrEvent(
80
        priority=42,
81
        trouble_ticket=None,
82
        ack=CorrEvent.ACK_NONE,
83
        occurrence=42,
84
        timestamp_active=timestamp,
85
        cause=event,
86
    )
87
    correvent.events.append(event)
88
    DBSession.add(correvent)
89
    DBSession.flush()
49
    correvent = functions.add_correvent([event], timestamp=timestamp)
90 50

  
91 51
    usergroup = UserGroup.by_group_name(u'users_with_access')
92 52
    DBSession.add(DataPermission(
......
95 55
        access=u'r',
96 56
    ))
97 57
    DBSession.flush()
98

  
99 58
    transaction.commit()
59

  
100 60
    correvent = DBSession.query(CorrEvent).first()
101 61
    event = DBSession.query(Event).first()
102

  
103 62
    return (hostgroup, correvent.idcorrevent, event.idevent)
104 63

  
105 64
class TestDetailsPlugin(TestController):
vigiboard/tests/functional/plugins/test_plugin_hls.py
9 9
from nose.tools import assert_equal
10 10

  
11 11
from vigilo.models.session import DBSession
12
from vigilo.models.demo import functions
12 13
from vigilo.models.tables import Permission, DataPermission, StateName, \
13 14
                            SupItemGroup, Host, HighLevelService, \
14 15
                            Event, CorrEvent, ImpactedPath, ImpactedHLS, \
......
33 34
    DBSession.flush()
34 35

  
35 36
    # On crée un hôte de test.
36
    host = Host(
37
        name = u'host',
38
        snmpcommunity = u'public',
39
        hosttpl = u'/dev/null',
40
        address = u'192.168.1.1',
41
        snmpport = 42,
42
        weight = 42,
43
        )
44
    DBSession.add(host)
37
    host = functions.add_host(u'host')
45 38

  
46 39
    # On affecte cet hôte au groupe précédemment créé.
47 40
    hostmanagers.supitems.append(host)
48 41
    DBSession.flush()
49 42

  
50
    # On ajoute un évènement causé par cet hôte.
51
    event1 = Event(
52
        supitem = host,
53
        message = u'foo',
54
        current_state = StateName.statename_to_value(u'WARNING'),
55
        timestamp = datetime.now(),
56
    )
57
    DBSession.add(event1)
58
    DBSession.flush()
59

  
60
    # On ajoute un évènement corrélé causé par cet évènement 'brut'.
61
    aggregate = CorrEvent(
62
        idcause = event1.idevent,
63
        timestamp_active = datetime.now(),
64
        priority = 1,
65
        ack = CorrEvent.ACK_NONE)
66
    aggregate.events.append(event1)
67
    DBSession.add(aggregate)
68
    DBSession.flush()
43
    # On ajoute un évènement brut et un événement corrélé causé par cet hôte.
44
    event1 = functions.add_event(host, u'WARNING', u'foo')
45
    aggregate = functions.add_correvent([event1])
69 46

  
70 47
    transaction.commit()
71 48
    return aggregate
......
80 57
    haut niveau sont créés dans l'opération.
81 58
    """
82 59

  
83
    # Création de services de haut niveau dans la BDD.
84
    hls_template = {
85
        'message': u'Bar',
86
        'warning_threshold': 60,
87
        'critical_threshold': 80,
88
        'weight': None,
89
    }
90

  
91 60
    # Création des chemins de services de haut niveau impactés.
92 61
    for j in range(path_number):
93 62

  
......
98 67

  
99 68
        # Pour chaque étage du chemin,
100 69
        for i in range(path_length):
101
            # on ajoute un service de haut niveau dans la BDD,
102
            hls = HighLevelService(
103
                servicename = u'HLS' + str(j + 1) + str(i + 1),
104
                **hls_template)
105
            DBSession.add(hls)
106
            # et on ajoute un étage au chemin contenant ce service.
70
            # on ajoute un service de haut niveau dans la BDD...
71
            hls = functions.add_highlevelservice(
72
                u'HLS' + str(j + 1) + str(i + 1), None)
73

  
74
            # ...et on ajoute un étage au chemin contenant ce service.
107 75
            DBSession.add(
108 76
                ImpactedHLS(
109 77
                    path = path,
110 78
                    hls = hls,
111 79
                    distance = i + 1,
112
                    ))
80
                ))
113 81

  
114 82
    DBSession.flush()
115 83
    transaction.commit()
......
212 180

  
213 181
        # On peuple la base de données avant le test.
214 182
        DBSession.add(self.aggregate)
215
        hls = HighLevelService(
216
            servicename = u'HLS',
217
            message = u'Bar',
218
            warning_threshold = 60,
219
            critical_threshold = 80,
220
            weight = None,
221
        )
222
        DBSession.add(hls)
223
        DBSession.flush()
183
        hls = functions.add_highlevelservice(u'HLS', None, u'Bar')
224 184
        path1 = ImpactedPath(idsupitem = self.aggregate.events[0].idsupitem)
225 185
        DBSession.add(path1)
226 186
        path2 = ImpactedPath(idsupitem = self.aggregate.events[0].idsupitem)
vigiboard/tests/functional/test_history_table.py
13 13
import transaction
14 14

  
15 15
from vigilo.models.session import DBSession
16
from vigilo.models.demo import functions
16 17
from vigilo.models.tables import Event, EventHistory, CorrEvent, \
17 18
                            Permission, StateName, Host, \
18 19
                            SupItemGroup, LowLevelService, \
......
36 37
    DBSession.flush()
37 38

  
38 39
    # On crée un hôte de test, et on l'ajoute au groupe d'hôtes.
39
    managerhost = Host(
40
        name = u'managerhost',
41
        snmpcommunity = u'public',
42
        hosttpl = u'/dev/null',
43
        address = u'192.168.1.1',
44
        snmpport = 42,
45
        weight = 42,
46
    )
47
    DBSession.add(managerhost)
40
    managerhost = functions.add_host(u'managerhost')
48 41
    supitemmanagers.supitems.append(managerhost)
49 42
    DBSession.flush()
50 43

  
51 44
    # On crée un services de bas niveau, et on l'ajoute au groupe de services.
52
    managerservice = LowLevelService(
53
        host = managerhost,
54
        servicename = u'managerservice',
55
        command = u'halt',
56
        weight = 42,
57
    )
58
    DBSession.add(managerservice)
45
    managerservice = functions.add_lowlevelservice(
46
        managerhost, u'managerservice')
59 47
    supitemmanagers.supitems.append(managerservice)
60 48
    DBSession.flush()
61 49

  
......
68 56
    Génère un historique pour les tests.
69 57
    """
70 58

  
71
    # Ajout d'un événement
72
    event = Event(
73
        supitem = supitem,
74
        message = u'foo',
75
        current_state = StateName.statename_to_value(u"WARNING"),
76
        timestamp = datetime.now(),
77
    )
78
    DBSession.add(event)
79
    DBSession.flush()
80

  
81
    # Ajout des historiques
59
    # Ajout d'un événement et de ses entrées dans l'historique.
60
    event = functions.add_event(supitem, u'WARNING', u'foo')
82 61
    DBSession.add(EventHistory(
83 62
        type_action=u'Nagios update state',
84 63
        idevent=event.idevent,
......
89 68
        timestamp=datetime.now()))
90 69
    DBSession.flush()
91 70

  
92
    # Ajout d'un événement corrélé
93
    aggregate = CorrEvent(
94
        idcause = event.idevent,
95
        timestamp_active = datetime.now(),
96
        priority = 1,
97
        ack = CorrEvent.ACK_NONE)
98
    aggregate.events.append(event)
99
    DBSession.add(aggregate)
100
    DBSession.flush()
101

  
71
    aggregate = functions.add_correvent([event])
102 72
    return event.idevent
103 73

  
104 74

  
vigiboard/tests/functional/test_raw_events_table.py
12 12
import transaction
13 13

  
14 14
from vigilo.models.session import DBSession
15
from vigilo.models.demo import functions
15 16
from vigilo.models.tables import Event, EventHistory, CorrEvent, User, \
16 17
                            Permission, StateName, Host, UserGroup, \
17 18
                            LowLevelService, SupItemGroup, DataPermission
......
60 61
    ))
61 62
    DBSession.flush()
62 63

  
63
    # On crée un hôte de test, et on l'ajoute au groupe d'hôtes.
64
    managerhost = Host(
65
        name = u'managerhost',
66
        snmpcommunity = u'public',
67
        hosttpl = u'/dev/null',
68
        address = u'192.168.1.1',
69
        snmpport = 42,
70
        weight = 42,
71
    )
72
    DBSession.add(managerhost)
64
    # On crée un hôte de test et on l'ajoute au groupe d'hôtes.
65
    managerhost = functions.add_host(u'managerhost')
73 66
    supitemmanagers.supitems.append(managerhost)
74 67
    DBSession.flush()
75 68

  
76
    # On crée un services de bas niveau, et on l'ajoute au groupe de services.
77
    managerservice = LowLevelService(
78
        host = managerhost,
79
        servicename = u'managerservice',
80
        command = u'halt',
81
        weight = 42,
82
    )
83
    DBSession.add(managerservice)
69
    # On crée un services de bas niveau et on l'ajoute au groupe de services.
70
    managerservice = functions.add_lowlevelservice(
71
                        managerhost, u'managerservice')
84 72
    supitemmanagers.supitems.append(managerservice)
85 73
    DBSession.flush()
86 74

  
87 75
    if caused_by_service:
88
        supitem = managerservice
76
        event = functions.add_event(managerservice, u'WARNING', u'foo')
89 77
    else:
90
        supitem = managerhost
91

  
92
    # Ajout d'un événement
93
    event = Event(
94
        supitem = supitem,
95
        message = u'foo',
96
        current_state = StateName.statename_to_value(u"WARNING"),
97
        timestamp = datetime.now(),
98
    )
99
    DBSession.add(event)
100
    DBSession.flush()
78
        event = functions.add_event(managerhost, u'WARNING', u'foo')
101 79

  
102 80
    # Ajout des historiques
103 81
    DBSession.add(EventHistory(
......
111 89
    DBSession.flush()
112 90

  
113 91
    # Ajout d'un événement corrélé
114
    aggregate = CorrEvent(
115
        idcause = event.idevent,
116
        timestamp_active = datetime.now(),
117
        priority = 1,
118
        ack = CorrEvent.ACK_NONE)
119
    aggregate.events.append(event)
120
    DBSession.add(aggregate)
121
    DBSession.flush()
92
    aggregate = functions.add_correvent([event])
122 93
    return aggregate.idcorrevent
123 94

  
124 95
def add_masked_event(idcorrevent):
......
127 98
    hostmanagers = SupItemGroup.by_group_name(u'managersgroup')
128 99
    nb_hosts = DBSession.query(Host).count()
129 100

  
130
    masked_host = Host(
131
        name = u'masked host #%d' % nb_hosts,
132
        snmpcommunity = u'public',
133
        hosttpl = u'/dev/null',
134
        address = u'192.168.1.%d' % nb_hosts,
135
        snmpport = 42,
136
        weight = 42,
137
    )
138
    DBSession.add(masked_host)
101
    masked_host = functions.add_host(u'masked host #%d' % nb_hosts)
139 102
    hostmanagers.supitems.append(masked_host)
140 103
    DBSession.flush()
141 104

  
142
    event = Event(
143
        supitem = masked_host,
144
        message = u'masked event #%d' % nb_hosts,
145
        current_state = StateName.statename_to_value(u"CRITICAL"),
146
        timestamp = datetime.now(),
147
    )
148
    DBSession.add(event)
149
    DBSession.flush()
105
    event = functions.add_event(masked_host, u'CRITICAL',
106
                                u'masked event #%d' % nb_hosts)
150 107

  
151 108
    aggregate = DBSession.query(CorrEvent).filter(
152 109
        CorrEvent.idcorrevent == idcorrevent).one()
vigiboard/tests/functional/test_root.py
20 20
import transaction
21 21

  
22 22
from vigilo.models.session import DBSession
23
from vigilo.models.demo import functions
23 24
from vigilo.models.tables import Event, EventHistory, CorrEvent, User, \
24 25
                            Permission, StateName, Host, UserGroup, \
25 26
                            SupItemGroup, LowLevelService, DataPermission
......
29 30
def populate_DB():
30 31
    """ Peuple la base de données. """
31 32
    # On ajoute un groupe d'hôtes et un groupe de services.
32
    supitemmanagers = SupItemGroup(name = u'managersgroup', parent=None)
33
    DBSession.add(supitemmanagers)
34
    DBSession.flush()
33
    supitemmanagers = functions.add_supitemgroup(u'managersgroup')
35 34

  
36 35
    usergroup = UserGroup.by_group_name(u'users_with_access')
37 36
    DBSession.add(DataPermission(
......
42 41
    DBSession.flush()
43 42

  
44 43
    # On crée un 2 hôtes, et on les ajoute au groupe d'hôtes.
45
    host1 = Host(
46
        name = u'host1',
47
        snmpcommunity = u'public',
48
        hosttpl = u'/dev/null',
49
        address = u'192.168.1.1',
50
        snmpport = 42,
51
        weight = 42,
52
    )
53
    DBSession.add(host1)
44
    host1 = functions.add_host(u'host1')
45
    host2 = functions.add_host(u'host2')
54 46
    supitemmanagers.supitems.append(host1)
55
    host2 = Host(
56
        name = u'host2',
57
        snmpcommunity = u'public',
58
        hosttpl = u'/dev/null',
59
        address = u'192.168.1.1',
60
        snmpport = 42,
61
        weight = 42,
62
    )
63
    DBSession.add(host2)
64 47
    supitemmanagers.supitems.append(host2)
65 48
    DBSession.flush()
66 49

  
67 50
    # On crée 2 services de bas niveau, et on les ajoute au groupe de services.
68
    service1 = LowLevelService(
69
        host = host1,
70
        servicename = u'service1',
71
        command = u'halt',
72
        weight = 42,
73
    )
74
    DBSession.add(service1)
51
    service1 = functions.add_lowlevelservice(host1, u'service1')
52
    service2 = functions.add_lowlevelservice(host2, u'service2')
75 53
    supitemmanagers.supitems.append(service1)
76
    service2 = LowLevelService(
77
        host = host2,
78
        servicename = u'service2',
79
        command = u'halt',
80
        weight = 42,
81
    )
82
    DBSession.add(service2)
83 54
    supitemmanagers.supitems.append(service2)
84 55
    DBSession.flush()
85 56

  
......
93 64
    Génère un historique pour les tests.
94 65
    """
95 66

  
96
    # Ajout d'un événement
97
    event = Event(
98
        supitem = supitem,
99
        message = u'foo',
100
        current_state = StateName.statename_to_value(event_status),
101
        timestamp = datetime.now(),
102
    )
103
    DBSession.add(event)
104
    DBSession.flush()
105

  
106
    # Ajout d'un événement corrélé
107
    aggregate = CorrEvent(
108
        idcause = event.idevent,
109
        timestamp_active = timestamp,
110
        priority = 1,
111
        ack = correvent_status)
112
    aggregate.events.append(event)
113
    DBSession.add(aggregate)
114
    DBSession.flush()
115

  
67
    # Ajout d'un événement brut et d'un événement corrélé.
68
    event = functions.add_event(supitem, event_status, u'foo')
69
    aggregate = functions.add_correvent([event], status=correvent_status)
116 70
    return aggregate.idcorrevent
117 71

  
118 72

  
vigiboard/tests/functional/test_search_form_service.py
11 11

  
12 12
from vigiboard.tests import TestController
13 13
from vigilo.models.session import DBSession
14
from vigilo.models.demo import functions
14 15
from vigilo.models.tables import SupItemGroup, Host, Permission, \
15 16
                                    StateName, LowLevelService, \
16 17
                                    Event, CorrEvent, User, UserGroup, \
......
20 21
    """Insère les dépendances nécessaires aux tests."""
21 22
    timestamp = datetime.now()
22 23

  
23
    hostgroup = SupItemGroup(name=u'foo', parent=None)
24
    DBSession.add(hostgroup)
25

  
26
    host = Host(
27
        name=u'bar',
28
        description=u'',
29
        hosttpl=u'',
30
        address=u'127.0.0.1',
31
        snmpport=42,
32
        snmpcommunity=u'public',
33
        snmpversion=u'3',
34
        weight=42,
35
    )
36
    DBSession.add(host)
37
    DBSession.flush()
38

  
24
    hostgroup = functions.add_supitemgroup(u'foo')
25
    host = functions.add_host(u'bar')
39 26
    hostgroup.supitems.append(host)
40 27
    DBSession.flush()
41 28

  
42
    servicegroup = SupItemGroup(name=u'bar', parent=None)
43
    DBSession.add(servicegroup)
44
    DBSession.flush()
45

  
46
    service = LowLevelService(
47
        host=host,
48
        command=u'',
49
        weight=42,
50
        servicename=u'baz',
51
    )
52
    DBSession.add(service)
53
    DBSession.flush()
54

  
29
    servicegroup = functions.add_supitemgroup(u'bar')
30
    service = functions.add_lowlevelservice(host, u'baz')
55 31
    servicegroup.supitems.append(service)
56 32
    DBSession.flush()
57 33

  
58
    event = Event(
59
        supitem=service,
60
        timestamp=timestamp,
61
        current_state=StateName.statename_to_value(u'WARNING'),
62
        message=u'Hello world',
63
    )
64
    DBSession.add(event)
65
    DBSession.flush()
66

  
67
    correvent = CorrEvent(
68
        priority=42,
69
        trouble_ticket=None,
70
        ack=CorrEvent.ACK_NONE,
71
        occurrence=42,
72
        timestamp_active=timestamp,
73
        cause=event,
74
    )
75
    correvent.events.append(event)
76
    DBSession.add(correvent)
77
    DBSession.flush()
34
    event = functions.add_event(service, u'WARNING', u'Hello world', timestamp)
35
    correvent = functions.add_correvent([event], timestamp=timestamp)
78 36
    return (hostgroup, servicegroup)
79 37

  
80 38
class TestSearchFormService(TestController):
vigiboard/tests/functional/utils.py
12 12
import transaction
13 13

  
14 14
from vigilo.models.session import DBSession
15
from vigilo.models.demo import functions
15 16
from vigilo.models.tables import Event, CorrEvent, DataPermission, \
16 17
                            Permission, StateName, Host, SupItemGroup, \
17 18
                            LowLevelService, User, UserGroup, Permission
......
22 23

  
23 24
    # Création des 4 groupes de supitems :
24 25
    # - 1 groupe racine 'root' ;
25
    root = SupItemGroup(name=u'root', parent=None)
26
    DBSession.add(root)
26
    root = functions.add_supitemgroup(u'root')
27 27
    # - 1 groupe principal 'maingroup' ;
28
    maingroup = SupItemGroup(name=u'maingroup', parent=root)
29
    DBSession.add(maingroup)
28
    maingroup = functions.add_supitemgroup(u'maingroup', root)
30 29
    # - 2 sous-groupes 'group1' et 'group2', faisant tous
31 30
    #   les deux parties du groupe principal 'maingroup'.
32
    group1 = SupItemGroup(name=u'group1', parent=maingroup)
33
    DBSession.add(group1)
34
    group2 = SupItemGroup(name=u'group2', parent=maingroup)
35
    DBSession.add(group2)
36
    DBSession.flush()
31
    group1 = functions.add_supitemgroup(u'group1', maingroup)
32
    group2 = functions.add_supitemgroup(u'group2', maingroup)
37 33

  
38 34
    # Création de 2 groupes d'utilisateurs (contenant chacun un utilisateur) :
39 35
    vigiboard_perm = Permission.by_permission_name(u'vigiboard-access')
......
73 69
    DBSession.flush()
74 70

  
75 71
    # Création de 3 hôtes (1 par groupe de supitems).
76
    host_template = {
77
        'snmpcommunity': u'public',
78
        'hosttpl': u'/dev/null',
79
        'address': u'192.168.1.1',
80
        'snmpport': 42,
81
        'weight': 42,
82
    }
83

  
84
    maingroup_host = Host(name=u'maingroup_host', **host_template)
85
    DBSession.add(maingroup_host)
86
    group1_host = Host(name=u'group1_host', **host_template)
87
    DBSession.add(group1_host)
88
    group2_host = Host(name=u'group2_host', **host_template)
89
    DBSession.add(group2_host)
72
    maingroup_host = functions.add_host(u'maingroup_host')
73
    group1_host = functions.add_host(u'group1_host')
74
    group2_host = functions.add_host(u'group2_host')
90 75

  
91 76
    # Affectation des hôtes aux groupes.
92 77
    maingroup.supitems.append(maingroup_host)
......
100 85
        'weight': 42,
101 86
    }
102 87

  
103
    group1_service = LowLevelService(
104
        host = group1_host,
105
        servicename = u'group1_service',
106
        **service_template
107
    )
108
    DBSession.add(group1_service)
109

  
110
    group2_service = LowLevelService(
111
        host = group2_host,
112
        servicename = u'group2_service',
113
        **service_template
114
    )
115
    DBSession.add(group2_service)
116

  
117
    maingroup_service = LowLevelService(
118
        host = maingroup_host,
119
        servicename = u'maingroup_service',
120
        **service_template
121
    )
122
    DBSession.add(maingroup_service)
123
    DBSession.flush()
88
    group1_service = functions.add_lowlevelservice(
89
        group1_host, u'group1_service')
90
    group2_service = functions.add_lowlevelservice(
91
        group2_host, u'group2_service')
92
    maingroup_service = functions.add_lowlevelservice(
93
        maingroup_host, u'maingroup_service')
124 94

  
125 95
    # Ajout de 6 événements (1 par supitem)
126
    event_template = {
127
        'message': u'foo',
128
        'current_state': StateName.statename_to_value(u'WARNING'),
129
        'timestamp': datetime.now(),
130
    }
131

  
132
    event1 = Event(supitem=maingroup_host, **event_template)
133
    DBSession.add(event1)
134
    event2 = Event(supitem=maingroup_service, **event_template)
135
    DBSession.add(event2)
136
    event3 = Event(supitem=group1_host, **event_template)
137
    DBSession.add(event3)
138
    event4 = Event(supitem=group1_service, **event_template)
139
    DBSession.add(event4)
140
    event5 = Event(supitem=group2_host, **event_template)
141
    DBSession.add(event5)
142
    event6 = Event(supitem=group2_service, **event_template)
143
    DBSession.add(event6)
144
    DBSession.flush()
96
    event1 = functions.add_event(maingroup_host, u'WARNING', u'foo')
97
    event2 = functions.add_event(maingroup_service, u'WARNING', u'foo')
98
    event3 = functions.add_event(group1_host, u'WARNING', u'foo')
99
    event4 = functions.add_event(group1_service, u'WARNING', u'foo')
100
    event5 = functions.add_event(group2_host, u'WARNING', u'foo')
101
    event6 = functions.add_event(group2_service, u'WARNING', u'foo')
145 102

  
146 103
    # Ajout de 5 événements corrélés (1 pour chaque évènement,
147 104
    # sauf celui touchant le 'maingroup_service' qui sera rattaché
148 105
    # à l'évènement corrélé causé par le 'maingroup_host').
149
    aggregate_template = {
150
        'timestamp_active': datetime.now(),
151
        'priority': 1,
152
        'ack': CorrEvent.ACK_NONE,
153
    }
154

  
155
    aggregate1 = CorrEvent(
156
        idcause=event1.idevent, **aggregate_template)
157
    aggregate3 = CorrEvent(
158
        idcause=event3.idevent, **aggregate_template)
159
    aggregate4 = CorrEvent(
160
        idcause=event4.idevent, **aggregate_template)
161
    aggregate5 = CorrEvent(
162
        idcause=event5.idevent, **aggregate_template)
163
    aggregate6 = CorrEvent(
164
        idcause=event6.idevent, **aggregate_template)
165

  
166
    aggregate1.events.append(event1)
167
    aggregate1.events.append(event2)
168
    aggregate3.events.append(event3)
169
    aggregate4.events.append(event4)
170
    aggregate5.events.append(event5)
171
    aggregate6.events.append(event6)
172
    DBSession.add(aggregate1)
173
    DBSession.add(aggregate3)
174
    DBSession.add(aggregate4)
175
    DBSession.add(aggregate5)
176
    DBSession.add(aggregate6)
177
    DBSession.flush()
178

  
106
    aggregate1 = functions.add_correvent([event1, event2])
107
    aggregate3 = functions.add_correvent([event3])
108
    aggregate4 = functions.add_correvent([event4])
109
    aggregate5 = functions.add_correvent([event5])
110
    aggregate6 = functions.add_correvent([event6])
179 111
    transaction.commit()

Also available in: Unified diff