[test] Journalisation d'un test complet avec envois de mail en cas d'erreurs

This commit is contained in:
Valentin Samir 2014-03-21 09:19:27 +01:00
parent 8171455f4b
commit 7b8cfaea67
2 changed files with 37 additions and 10 deletions

30
test.py
View file

@ -18,13 +18,17 @@ import variables
sys.path.append("/usr/scripts/")
from gestion.affich_tools import anim, OK, cprint, ERREUR
mail_format = False
show_traceback = False
if "--traceback" in sys.argv:
show_traceback = True
fast_test = False
if "--fast" in sys.argv:
fast_test = True
if "--mail" in sys.argv:
mail_format = True
OK = "OK"
ERREUR = "ERREUR"
def randomMAC():
mac = [ 0x00, 0x16, 0x3e,
random.randint(0x00, 0x7f),
@ -72,7 +76,7 @@ def keys_of_list_of_dict(l, type=''):
Teste l'écriture des objets si on est en mode rw"""
keys = set()
if l:
anime=anim("Test des objets %r" % type, len(l))
anime=anim("Test des objets %r" % type, 0 if mail_format else len(l))
anime.reinit()
ok=True
for item in l:
@ -88,7 +92,8 @@ def keys_of_list_of_dict(l, type=''):
if show_traceback: print traceback.format_exc()
else: print "\t%r" % error
ok = False
anime.cycle()
if not mail_format:
anime.cycle()
if l:
anime.reinit()
print OK if ok else ERREUR
@ -145,12 +150,14 @@ def tests_machines(parent_dn, realm_list, ipsec=False):
else: print "\t%r" % error
else: print OK
print "Test de la librairie lc_ldap"
if not mail_format:
print "Test de la librairie lc_ldap"
print "Connexion"
print "Connexion"
conn = shortcuts.lc_ldap_test()
print u"Tests effectués avec les droits %s " % ', '.join(conn.droits)
if not mail_format:
print u"Tests effectués avec les droits %s " % ', '.join(conn.droits)
###############################################
# Instanciation de tous les attributs de tous #
@ -179,16 +186,19 @@ else:
print OK
machines_attrs_keys = keys_of_list_of_dict(machines, 'machines')
print "Test des attributs des machines"
if not mail_format:
print "Test des attributs des machines"
test_list_of_dict(machines_attrs_keys, machines)
adherents_attrs_keys = keys_of_list_of_dict(adherents, 'adherents')
print "Test des attributs des adhérents"
if not mail_format:
print "Test des attributs des adhérents"
test_list_of_dict(adherents_attrs_keys, adherents)
print "Test de création d'objets"
print "Instanciation"
if not mail_format:
print "Test de création d'objets"
print "Instanciation"
##############################################