Revision 05432195
Mise en commun code des tests unitaires.
Ajout de tableaux en ASCII art pour expliquer comment on construit les
objets pour le passage des tests (facilite la compréhension du bousin).
Change-Id: I6a2a90d30339592a33310936bee58794d7ea0d2c
Reviewed-on: https://vigilo-dev.si.c-s.fr/review/262
Tested-by: Build system <qa@vigilo-dev.si.c-s.fr>
Reviewed-by: Aurelien BOMPARD <aurelien.bompard@c-s.fr>
vigigraph/tests/functional/helpers.py | ||
---|---|---|
1 |
# -*- coding: utf-8 -*- |
|
2 |
|
|
3 |
from vigilo.models.tables import Permission |
|
4 |
|
|
5 |
from vigilo.models.demo.functions import add_supitemgroup, \ |
|
6 |
add_host, add_host2group, add_usergroup, add_user, \ |
|
7 |
add_supitemgrouppermission, add_usergroup_permission |
|
8 |
|
|
9 |
from vigilo.models.demo.functions import add_graph, \ |
|
10 |
add_graphgroup, add_graph2group, add_perfdatasource, \ |
|
11 |
add_perfdatasource2graph, add_vigiloserver, add_application |
|
12 |
|
|
13 |
|
|
14 |
def populateDB(): |
|
15 |
""" |
|
16 |
Peuple la base de données en ajoutant : |
|
17 |
- 3 groupes d'hôtes ; |
|
18 |
- 3 hôtes ; |
|
19 |
- 3 utilisateurs. |
|
20 |
Les objets construits respectent les matrices suivantes. |
|
21 |
|
|
22 |
|
|
23 |
Matrice des utilisateurs et groupes d'utilisateurs : |
|
24 |
|
|
25 |
util. \ groupe | managers | powerusers | users | visitor |
|
26 |
---------------+----------+------------+-------+-------- |
|
27 |
manager | X | | | |
|
28 |
poweruser | | X | | |
|
29 |
user | | | X | |
|
30 |
visitor | | | | X |
|
31 |
|
|
32 |
|
|
33 |
Matrice des groupes d'utilisateurs et des droits |
|
34 |
sur les groupes d'objets supervisés : |
|
35 |
|
|
36 |
usergroup \ supitemgroup | mhg | hg1 | hg2 |
|
37 |
| (host1) | (host2) | (host3) |
|
38 |
-------------------------+---------+---------+--------- |
|
39 |
managers | / | / | / |
|
40 |
powerusers | X | / | / |
|
41 |
users | | X | |
|
42 |
visitors | | | |
|
43 |
(X = accès explicite, / = accès implicite) |
|
44 |
|
|
45 |
|
|
46 |
@return: Tuple contenant les trois hôtes créés. |
|
47 |
@rtype: C{tuple} of C{vigilo.models.tables.Host} |
|
48 |
""" |
|
49 |
|
|
50 |
# Ajout d'un groupe d'hôtes principal |
|
51 |
mainhostgroup = add_supitemgroup(u'mhg', None) |
|
52 |
|
|
53 |
# Ajout d'un premier groupe d'hôtes de second niveau |
|
54 |
hostgroup1 = add_supitemgroup(u'hg1', mainhostgroup) |
|
55 |
|
|
56 |
# Ajout d'un second groupe d'hôtes de second niveau |
|
57 |
hostgroup2 = add_supitemgroup(u'hg2', mainhostgroup) |
|
58 |
|
|
59 |
# Ajout de trois hôtes |
|
60 |
host1 = add_host(u'host1') |
|
61 |
host2 = add_host(u'host2') |
|
62 |
host3 = add_host(u'host3') |
|
63 |
|
|
64 |
# Ajout du premier hôte dans le groupe d'hôtes principal. |
|
65 |
add_host2group(host1, mainhostgroup) |
|
66 |
# Ajout du deuxième hôte dans le premier |
|
67 |
# groupe d'hôtes de second niveau. |
|
68 |
add_host2group(host2, hostgroup1) |
|
69 |
# Ajout du troisième hôte dans le second |
|
70 |
# groupe d'hôtes de second niveau. |
|
71 |
add_host2group(host3, hostgroup2) |
|
72 |
|
|
73 |
# Ajout de trois groupes d'utilisateurs |
|
74 |
poweruser_group = add_usergroup(u'powerusers') |
|
75 |
user_group = add_usergroup(u'users') |
|
76 |
visitor_group = add_usergroup(u'visitor') |
|
77 |
|
|
78 |
# Ajout de trois utilisateurs |
|
79 |
add_user(u'poweruser', u'some.power@us.er', |
|
80 |
u'Power User', u'poweruserpass', u'powerusers') |
|
81 |
add_user(u'user', u'some.random@us.er', |
|
82 |
u'User', u'userpass', u'users') |
|
83 |
add_user(u'visitor', u'some.visiting@us.er', |
|
84 |
u'', u'visitorpass', u'visitor') |
|
85 |
|
|
86 |
# Ajout des permissions sur le groupe d'hôtes |
|
87 |
# principal pour le premier groupe d'utilisateurs |
|
88 |
add_supitemgrouppermission(mainhostgroup, poweruser_group) |
|
89 |
|
|
90 |
# Ajout des permissions sur le premier groupe d'hôtes |
|
91 |
# secondaire pour le second groupe d'utilisateurs |
|
92 |
add_supitemgrouppermission(hostgroup1, user_group) |
|
93 |
|
|
94 |
# Ajout de la permission 'vigigraph-access' aux groupes d'utilisateurs |
|
95 |
perm = Permission.by_permission_name(u'vigigraph-access') |
|
96 |
add_usergroup_permission(poweruser_group, perm) |
|
97 |
add_usergroup_permission(user_group, perm) |
|
98 |
add_usergroup_permission(visitor_group, perm) |
|
99 |
|
|
100 |
return (host1, host2, host3) |
|
101 |
|
|
102 |
|
|
103 |
def addGraphs(host1, host2, host3): |
|
104 |
""" |
|
105 |
Ajout d'un graphe pour chacun des trois hôtes passés en paramètres. |
|
106 |
|
|
107 |
@param host1: Premier hôte. |
|
108 |
@type host1: C{vigilo.models.tables.Host} |
|
109 |
@param host2: Deuxième hôte. |
|
110 |
@type host2: C{vigilo.models.tables.Host} |
|
111 |
@param host3: Troisième hôte. |
|
112 |
@type host3: C{vigilo.models.tables.Host} |
|
113 |
""" |
|
114 |
|
|
115 |
# Ajout d'un serveur de supervision |
|
116 |
vigiloserver = add_vigiloserver(u'locahost') |
|
117 |
|
|
118 |
# Ajout d'une application 'vigirrd' |
|
119 |
add_application(u"vigirrd") |
|
120 |
|
|
121 |
# Ajout de trois graphes |
|
122 |
graph1 = add_graph("graph1") |
|
123 |
graph2 = add_graph("graph2") |
|
124 |
graph3 = add_graph("graph3") |
|
125 |
|
|
126 |
# Ajout d'une perfdatasource pour chaque hôte |
|
127 |
datasource1 = add_perfdatasource( |
|
128 |
u'load', host1, None, None, vigiloserver) |
|
129 |
datasource2 = add_perfdatasource( |
|
130 |
u'load', host2, None, None, vigiloserver) |
|
131 |
datasource3 = add_perfdatasource( |
|
132 |
u'load', host3, None, None, vigiloserver) |
|
133 |
|
|
134 |
# Ajout d'une perfdatsource à chaque graphe |
|
135 |
add_perfdatasource2graph(datasource1, graph1) |
|
136 |
add_perfdatasource2graph(datasource2, graph2) |
|
137 |
add_perfdatasource2graph(datasource3, graph3) |
|
138 |
|
|
139 |
# Ajout de trois groupes de graphes |
|
140 |
graphgroup1 = add_graphgroup("graphgroup1") |
|
141 |
graphgroup2 = add_graphgroup("graphgroup2") |
|
142 |
graphgroup3 = add_graphgroup("graphgroup3") |
|
143 |
|
|
144 |
# Ajout de chaque graphe à un groupe de graphes |
|
145 |
add_graph2group(graph1, graphgroup1) |
|
146 |
add_graph2group(graph2, graphgroup2) |
|
147 |
add_graph2group(graph3, graphgroup3) |
vigigraph/tests/functional/test_graph_selection_form.py | ||
---|---|---|
10 | 10 |
from vigigraph.tests import TestController |
11 | 11 |
from vigilo.models.session import DBSession |
12 | 12 |
from vigilo.models.tables import Host, Graph, GraphGroup |
13 |
from vigilo.models.demo.functions import \ |
|
14 |
add_graph, add_graphgroup, add_graph2group, \ |
|
15 |
add_perfdatasource, add_perfdatasource2graph, \ |
|
16 |
add_vigiloserver, add_application |
|
17 |
|
|
18 |
from vigigraph.tests.functional.test_host_selection_form import populateDB |
|
19 |
|
|
20 |
|
|
21 |
def addGraphs(host1, host2, host3): |
|
22 |
""" |
|
23 |
Ajout d'un graphe pour chacun des trois hôtes passés en paramètres. |
|
24 |
|
|
25 |
@param host1: Premier hôte. |
|
26 |
@type host1: C{vigilo.models.tables.Host} |
|
27 |
@param host2: Deuxième hôte. |
|
28 |
@type host2: C{vigilo.models.tables.Host} |
|
29 |
@param host3: Troisième hôte. |
|
30 |
@type host3: C{vigilo.models.tables.Host} |
|
31 |
""" |
|
32 |
|
|
33 |
# Ajout d'un serveur de supervision |
|
34 |
vigiloserver = add_vigiloserver(u'locahost') |
|
35 |
|
|
36 |
# Ajout d'une application 'vigirrd' |
|
37 |
add_application(u"vigirrd") |
|
38 |
|
|
39 |
# Ajout de trois graphes |
|
40 |
graph1 = add_graph("graph1") |
|
41 |
graph2 = add_graph("graph2") |
|
42 |
graph3 = add_graph("graph3") |
|
43 |
|
|
44 |
# Ajout d'une perfdatasource pour chaque hôte |
|
45 |
datasource1 = add_perfdatasource( |
|
46 |
u'load', host1, None, None, vigiloserver) |
|
47 |
datasource2 = add_perfdatasource( |
|
48 |
u'load', host2, None, None, vigiloserver) |
|
49 |
datasource3 = add_perfdatasource( |
|
50 |
u'load', host3, None, None, vigiloserver) |
|
51 |
|
|
52 |
# Ajout d'une perfdatsource à chaque graphe |
|
53 |
add_perfdatasource2graph(datasource1, graph1) |
|
54 |
add_perfdatasource2graph(datasource2, graph2) |
|
55 |
add_perfdatasource2graph(datasource3, graph3) |
|
56 |
|
|
57 |
# Ajout de trois groupes de graphes |
|
58 |
graphgroup1 = add_graphgroup("graphgroup1") |
|
59 |
graphgroup2 = add_graphgroup("graphgroup2") |
|
60 |
graphgroup3 = add_graphgroup("graphgroup3") |
|
61 |
|
|
62 |
# Ajout de chaque graphe à un groupe de graphes |
|
63 |
add_graph2group(graph1, graphgroup1) |
|
64 |
add_graph2group(graph2, graphgroup2) |
|
65 |
add_graph2group(graph3, graphgroup3) |
|
13 |
from helpers import populateDB, addGraphs |
|
66 | 14 |
|
67 | 15 |
|
68 | 16 |
class TestGraphTree(TestController): |
vigigraph/tests/functional/test_host_selection_form.py | ||
---|---|---|
10 | 10 |
from vigigraph.tests import TestController |
11 | 11 |
from vigilo.models.session import DBSession |
12 | 12 |
from vigilo.models.tables import Host, SupItemGroup, Permission |
13 |
from vigilo.models.demo.functions import add_supitemgroup, \ |
|
14 |
add_host, add_host2group, add_usergroup, add_user, \ |
|
15 |
add_supitemgrouppermission, add_usergroup_permission |
|
16 |
|
|
17 |
|
|
18 |
def populateDB(): |
|
19 |
""" |
|
20 |
Peuple la base de données en ajoutant : |
|
21 |
- 3 groupes d'hôtes ; |
|
22 |
- 3 hôtes ; |
|
23 |
- 3 utilisateurs. |
|
24 |
Affecte les permissions nécessaires aux utilisateurs en vue des tests. |
|
25 |
Retourne les 3 hôtes créés. |
|
26 |
|
|
27 |
@return: Tuple contenant les trois hôtes. |
|
28 |
@rtype: C{tuple} of C{vigilo.models.tables.Host} |
|
29 |
""" |
|
30 |
|
|
31 |
# Ajout d'un groupe d'hôtes principal |
|
32 |
mainhostgroup = add_supitemgroup(u'mhg', None) |
|
33 |
|
|
34 |
# Ajout d'un premier groupe d'hôtes de second niveau |
|
35 |
hostgroup1 = add_supitemgroup(u'hg1', mainhostgroup) |
|
36 |
|
|
37 |
# Ajout d'un second groupe d'hôtes de second niveau |
|
38 |
hostgroup2 = add_supitemgroup(u'hg2', mainhostgroup) |
|
39 |
|
|
40 |
# Ajout de trois hôtes |
|
41 |
host1 = add_host(u'host1') |
|
42 |
host2 = add_host(u'host2') |
|
43 |
host3 = add_host(u'host3') |
|
44 |
|
|
45 |
# Ajout du premier hôte dans le groupe d'hôtes principal. |
|
46 |
add_host2group(host1, mainhostgroup) |
|
47 |
# Ajout du deuxième hôte dans le premier |
|
48 |
# groupe d'hôtes de second niveau. |
|
49 |
add_host2group(host2, hostgroup1) |
|
50 |
# Ajout du troisième hôte dans le second |
|
51 |
# groupe d'hôtes de second niveau. |
|
52 |
add_host2group(host3, hostgroup2) |
|
53 |
|
|
54 |
# Ajout de trois groupes d'utilisateurs |
|
55 |
poweruser_group = add_usergroup(u'powerusers') |
|
56 |
user_group = add_usergroup(u'users') |
|
57 |
visitor_group = add_usergroup(u'visitor') |
|
58 |
|
|
59 |
# Ajout de trois utilisateurs |
|
60 |
add_user(u'poweruser', u'some.power@us.er', |
|
61 |
u'Power User', u'poweruserpass', u'powerusers') |
|
62 |
add_user(u'user', u'some.random@us.er', |
|
63 |
u'User', u'userpass', u'users') |
|
64 |
add_user(u'visitor', u'some.visiting@us.er', |
|
65 |
u'', u'visitorpass', u'visitor') |
|
66 |
|
|
67 |
# Ajout des permissions sur le groupe d'hôtes |
|
68 |
# principal pour le premier groupe d'utilisateurs |
|
69 |
add_supitemgrouppermission(mainhostgroup, poweruser_group) |
|
70 |
|
|
71 |
# Ajout des permissions sur le premier groupe d'hôtes |
|
72 |
# secondaire pour le second groupe d'utilisateurs |
|
73 |
add_supitemgrouppermission(hostgroup1, user_group) |
|
74 |
|
|
75 |
# Ajout de la permission 'vigigraph-access' aux groupes d'utilisateurs |
|
76 |
perm = Permission.by_permission_name(u'vigigraph-access') |
|
77 |
add_usergroup_permission(poweruser_group, perm) |
|
78 |
add_usergroup_permission(user_group, perm) |
|
79 |
add_usergroup_permission(visitor_group, perm) |
|
80 |
|
|
81 |
return (host1, host2, host3) |
|
82 |
|
|
13 |
from helpers import populateDB |
|
83 | 14 |
|
84 | 15 |
class TestHostTree(TestController): |
85 | 16 |
""" |
... | ... | |
100 | 31 |
DBSession.flush() |
101 | 32 |
transaction.commit() |
102 | 33 |
|
103 |
##### Premier onglet déroulant du formulaire ##### |
|
104 |
|
|
105 | 34 |
def test_get_root_host_groups_as_manager(self): |
106 | 35 |
""" |
107 | 36 |
Récupération des groupes d'hôtes racines en tant que manager |
... | ... | |
115 | 44 |
SupItemGroup.name == u'mhg').first() |
116 | 45 |
|
117 | 46 |
# Récupération des groupes d'hôtes principaux |
118 |
# accessibles à l'utilisateur 'manager' |
|
47 |
# accessibles à l'utilisateur 'manager'.
|
|
119 | 48 |
response = self.app.post( |
120 | 49 |
'/rpc/hosttree', { |
121 | 50 |
}, extra_environ={'REMOTE_USER': 'manager'}) |
... | ... | |
230 | 159 |
'/rpc/hosttree', { |
231 | 160 |
}, status=401) |
232 | 161 |
|
233 |
##### Deuxième onglet déroulant du formulaire ##### |
|
234 |
|
|
235 | 162 |
def test_get_host_groups_when_allowed(self): |
236 | 163 |
""" |
237 | 164 |
Récupération des groupes d'hôtes secondaires avec les bons droits |
... | ... | |
268 | 195 |
{'id': host1.idhost, 'name': host1.name, 'type': 'item'} |
269 | 196 |
], |
270 | 197 |
'groups': [ |
271 |
{'id': hostgroup1.idgroup, 'name': hostgroup1.name, 'type': 'group'}, |
|
272 |
{'id': hostgroup2.idgroup, 'name': hostgroup2.name, 'type': 'group'}, |
|
273 |
] |
|
198 |
{ |
|
199 |
'id': hostgroup1.idgroup, |
|
200 |
'name': hostgroup1.name, |
|
201 |
'type': 'group', |
|
202 |
}, |
|
203 |
{ |
|
204 |
'id': hostgroup2.idgroup, |
|
205 |
'name': hostgroup2.name, |
|
206 |
'type': 'group', |
|
207 |
}, |
|
208 |
], |
|
274 | 209 |
} |
275 | 210 |
) |
276 | 211 |
|
... | ... | |
289 | 224 |
{'id': host1.idhost, 'name': host1.name, 'type': 'item'} |
290 | 225 |
], |
291 | 226 |
'groups': [ |
292 |
{'id': hostgroup1.idgroup, 'name': hostgroup1.name, 'type': 'group'}, |
|
293 |
{'id': hostgroup2.idgroup, 'name': hostgroup2.name, 'type': 'group'}, |
|
294 |
] |
|
227 |
{ |
|
228 |
'id': hostgroup1.idgroup, |
|
229 |
'name': hostgroup1.name, |
|
230 |
'type': 'group', |
|
231 |
}, |
|
232 |
{ |
|
233 |
'id': hostgroup2.idgroup, |
|
234 |
'name': hostgroup2.name, |
|
235 |
'type': 'group', |
|
236 |
}, |
|
237 |
], |
|
295 | 238 |
} |
296 | 239 |
) |
297 | 240 |
|
... | ... | |
308 | 251 |
json, { |
309 | 252 |
'items': [], |
310 | 253 |
'groups': [ |
311 |
{'id': hostgroup1.idgroup, 'name': hostgroup1.name, 'type': 'group'}, |
|
312 |
] |
|
254 |
{ |
|
255 |
'id': hostgroup1.idgroup, |
|
256 |
'name': hostgroup1.name, |
|
257 |
'type': 'group', |
|
258 |
}, |
|
259 |
], |
|
313 | 260 |
} |
314 | 261 |
) |
315 | 262 |
|
... | ... | |
367 | 314 |
json, {'items': [], 'groups': []} |
368 | 315 |
) |
369 | 316 |
|
370 |
##### Troisième onglet déroulant du formulaire ##### |
|
371 |
|
|
372 | 317 |
def test_get_hosts_when_allowed(self): |
373 | 318 |
""" |
374 | 319 |
Récupération des hôtes avec les bons droits |
... | ... | |
404 | 349 |
# On s'assure que la liste d'hôtes retournée contient bien 'host1' |
405 | 350 |
self.assertEqual( |
406 | 351 |
json, { |
407 |
'items': [{'id': host1.idhost, 'name': host1.name, 'type': 'item'}], |
|
352 |
'items': [ |
|
353 |
{ |
|
354 |
'id': host1.idhost, |
|
355 |
'name': host1.name, |
|
356 |
'type': 'item', |
|
357 |
}, |
|
358 |
], |
|
408 | 359 |
'groups': [ |
409 |
{'id': hostgroup1.idgroup, 'name': hostgroup1.name, 'type': 'group'}, |
|
410 |
{'id': hostgroup2.idgroup, 'name': hostgroup2.name, 'type': 'group'} |
|
411 |
] |
|
360 |
{ |
|
361 |
'id': hostgroup1.idgroup, |
|
362 |
'name': hostgroup1.name, |
|
363 |
'type': 'group', |
|
364 |
}, |
|
365 |
{ |
|
366 |
'id': hostgroup2.idgroup, |
|
367 |
'name': hostgroup2.name, |
|
368 |
'type': 'group', |
|
369 |
}, |
|
370 |
], |
|
412 | 371 |
} |
413 | 372 |
) |
414 | 373 |
|
... | ... | |
422 | 381 |
# On s'assure que la liste d'hotes retournée contient bien 'host2' |
423 | 382 |
self.assertEqual( |
424 | 383 |
json, { |
425 |
'items': [{'id': host2.idhost, 'name': host2.name, 'type': 'item'}], |
|
426 |
'groups': [] |
|
384 |
'items': [ |
|
385 |
{ |
|
386 |
'id': host2.idhost, |
|
387 |
'name': host2.name, |
|
388 |
'type': 'item', |
|
389 |
}, |
|
390 |
], |
|
391 |
'groups': [], |
|
427 | 392 |
} |
428 | 393 |
) |
429 | 394 |
|
... | ... | |
437 | 402 |
# On s'assure que la liste d'hôtes retournée contient bien 'host1' |
438 | 403 |
self.assertEqual( |
439 | 404 |
json, { |
440 |
'items': [{'id': host1.idhost, 'name': host1.name, 'type': 'item'}], |
|
405 |
'items': [ |
|
406 |
{ |
|
407 |
'id': host1.idhost, |
|
408 |
'name': host1.name, |
|
409 |
'type': 'item', |
|
410 |
}, |
|
411 |
], |
|
441 | 412 |
'groups': [ |
442 |
{'id': hostgroup1.idgroup, 'name': hostgroup1.name, 'type': 'group'}, |
|
443 |
{'id': hostgroup2.idgroup, 'name': hostgroup2.name, 'type': 'group'}, |
|
444 |
] |
|
413 |
{ |
|
414 |
'id': hostgroup1.idgroup, |
|
415 |
'name': hostgroup1.name, |
|
416 |
'type': 'group', |
|
417 |
}, |
|
418 |
{ |
|
419 |
'id': hostgroup2.idgroup, |
|
420 |
'name': hostgroup2.name, |
|
421 |
'type': 'group', |
|
422 |
}, |
|
423 |
], |
|
445 | 424 |
} |
446 | 425 |
) |
447 | 426 |
|
... | ... | |
455 | 434 |
# On s'assure que la liste d'hotes retournée contient bien 'host2' |
456 | 435 |
self.assertEqual( |
457 | 436 |
json, { |
458 |
'items': [{'id': host2.idhost, 'name': host2.name, 'type': 'item'}], |
|
459 |
'groups': [] |
|
437 |
'items': [ |
|
438 |
{ |
|
439 |
'id': host2.idhost, |
|
440 |
'name': host2.name, |
|
441 |
'type': 'item', |
|
442 |
}, |
|
443 |
], |
|
444 |
'groups': [], |
|
460 | 445 |
} |
461 | 446 |
) |
462 | 447 |
|
... | ... | |
470 | 455 |
# On s'assure que la liste d'hôtes retournée contient bien 'host2' |
471 | 456 |
self.assertEqual( |
472 | 457 |
json, { |
473 |
'items': [{'id': host2.idhost, 'name': host2.name, 'type': 'item'}], |
|
474 |
'groups': [] |
|
458 |
'items': [ |
|
459 |
{ |
|
460 |
'id': host2.idhost, |
|
461 |
'name': host2.name, |
|
462 |
'type': 'item', |
|
463 |
}, |
|
464 |
], |
|
465 |
'groups': [], |
|
475 | 466 |
} |
476 | 467 |
) |
477 | 468 |
|
... | ... | |
505 | 496 |
self.assertEqual( |
506 | 497 |
json, { |
507 | 498 |
'items': [], |
508 |
'groups': [{'name': hostgroup1.name, 'id': hostgroup1.idgroup, 'type': 'group'}] |
|
499 |
'groups': [ |
|
500 |
{ |
|
501 |
'name': hostgroup1.name, |
|
502 |
'id': hostgroup1.idgroup, |
|
503 |
'type': 'group', |
|
504 |
}, |
|
505 |
], |
|
509 | 506 |
} |
510 | 507 |
) |
511 | 508 |
|
vigigraph/tests/functional/test_search_form.py | ||
---|---|---|
10 | 10 |
from vigigraph.tests import TestController |
11 | 11 |
from vigilo.models.session import DBSession |
12 | 12 |
from vigilo.models.tables import Host, SupItemGroup, Graph, GraphGroup |
13 |
|
|
14 |
from vigigraph.tests.functional.test_host_selection_form import populateDB |
|
15 |
from vigigraph.tests.functional.test_graph_selection_form import addGraphs |
|
13 |
from helpers import populateDB, addGraphs |
|
16 | 14 |
|
17 | 15 |
|
18 | 16 |
class TestSearchForm(TestController): |
Also available in: Unified diff