Revision b42cc707
Correction des tests unitaires de VigiBoard.
Dans les plugins, autorisation pour récupérer les infos sur des événements clos
(l'utilisateur doit tout de même avoir les permissions sur le contenu de l'événement).
Dans les settings de test, la valeur de "vigiboard_items_per_page" est fixée à 10 pour éviter des effets de bord parasites
lorsque cette variable a une valeur très basse (<5) dans development.ini.
git-svn-id: https://vigilo-dev.si.c-s.fr/svn@2218 b22e2e97-25c9-44ff-b637-2e5ceca36478
test.ini | ||
---|---|---|
22 | 22 |
sqlalchemy.url = sqlite:////tmp/test-vigiboard.sqlite |
23 | 23 |
db_basename = |
24 | 24 |
use_kerberos = False |
25 |
vigiboard_items_per_page = 10 |
|
25 | 26 |
use = config:development.ini |
26 | 27 |
|
27 | 28 |
[app:main_without_authn] |
vigiboard/controllers/plugins/details.py | ||
---|---|---|
37 | 37 |
).get('repoze.who.userid') |
38 | 38 |
|
39 | 39 |
username = request.environ['repoze.who.identity']['repoze.who.userid'] |
40 |
events = VigiboardRequest(User.by_user_name(username)) |
|
40 |
events = VigiboardRequest(User.by_user_name(username), False)
|
|
41 | 41 |
events.add_table( |
42 | 42 |
Event, |
43 | 43 |
events.items.c.hostname, |
... | ... | |
57 | 57 |
for edname, edlink in \ |
58 | 58 |
config['vigiboard_links.eventdetails'].iteritems(): |
59 | 59 |
|
60 |
# Rappel: |
|
61 |
# event[0] = priorité de l'alerte corrélée. |
|
62 |
# event[1] = alerte brute. |
|
63 | 60 |
if event.servicename: |
64 | 61 |
service = urllib.quote(event.servicename) |
65 | 62 |
else: |
vigiboard/controllers/root.py | ||
---|---|---|
552 | 552 |
# Permet de vérifier si l'utilisateur a bien les permissions |
553 | 553 |
# pour accéder à cet événement et si l'événement existe. |
554 | 554 |
username = request.environ['repoze.who.identity']['repoze.who.userid'] |
555 |
events = VigiboardRequest(User.by_user_name(username)) |
|
555 |
events = VigiboardRequest(User.by_user_name(username), False)
|
|
556 | 556 |
events.add_table(CorrEvent.idcorrevent) |
557 | 557 |
events.add_join((Event, CorrEvent.idcause == Event.idevent)) |
558 | 558 |
events.add_join((events.items, |
vigiboard/tests/functional/test_correvents_table.py | ||
---|---|---|
14 | 14 |
Host, HostGroup, LowLevelService |
15 | 15 |
from vigiboard.tests import TestController |
16 | 16 |
|
17 |
def populate_DB(caused_by_service):
|
|
17 |
def populate_DB(): |
|
18 | 18 |
""" Peuple la base de données. """ |
19 | 19 |
# On ajoute les groupes et leurs dépendances |
20 | 20 |
hosteditors = HostGroup(name=u'editorsgroup') |
... | ... | |
148 | 148 |
""" |
149 | 149 |
Tableau des événements (page d'accueil). |
150 | 150 |
""" |
151 |
populate_DB(True)
|
|
151 |
populate_DB() |
|
152 | 152 |
|
153 | 153 |
# L'utilisateur n'est pas authentifié. |
154 | 154 |
response = self.app.get('/', status=401) |
... | ... | |
185 | 185 |
""" |
186 | 186 |
Tableau des événements corrélés pour un service de bas niveau. |
187 | 187 |
""" |
188 |
populate_DB(True)
|
|
189 |
url = '/item/%s/%s' % ('managerhost', 'managerservice') |
|
188 |
populate_DB() |
|
189 |
url = '/item/1/%s/%s' % ('managerhost', 'managerservice')
|
|
190 | 190 |
|
191 | 191 |
# L'utilisateur n'est pas authentifié. |
192 | 192 |
response = self.app.get(url, status=401) |
... | ... | |
215 | 215 |
""" |
216 | 216 |
Tableau des événements corrélés pour un hôte. |
217 | 217 |
""" |
218 |
populate_DB(False)
|
|
219 |
url = '/item/%s/' % ('managerhost', ) |
|
218 |
populate_DB() |
|
219 |
url = '/item/1/%s/' % ('managerhost', )
|
|
220 | 220 |
|
221 | 221 |
# L'utilisateur n'est pas authentifié. |
222 | 222 |
response = self.app.get(url, status=401) |
Also available in: Unified diff