[test] Tests en écriture sur les objets existants

This commit is contained in:
Valentin Samir 2013-05-14 23:31:15 +02:00
parent 22ba5c1d38
commit be97406333

48
test.py
View file

@ -37,16 +37,30 @@ machine_ldif = {
club_ldif = { club_ldif = {
'nom' : [ 'autotest-club' ], 'nom' : [ 'autotest-club' ],
'chbre' : [ 'EXT' ], 'chbre' : [ 'EXT' ],
'controle' : ['p'],
} }
facture_ldif = {} facture_ldif = {}
def keys_of_list_of_dict(l): def keys_of_list_of_dict(l, type=''):
keys = set() keys = set()
if l:
anime=anim("Test des objets %r" % type, len(l))
anime.reinit()
ok=True
for item in l: for item in l:
keys = keys.union(item.keys()) keys = keys.union(item.attrs.keys())
try:
if item.mode in ['w', 'rw']:
item.save()
except Exception as error:
anime.reinit()
print ERREUR
if show_traceback: print traceback.format_exc()
else: print "\t%r" % error
ok = False
anime.cycle()
if l: print OK if ok else ERREUR
keys = list(keys) keys = list(keys)
keys.sort() keys.sort()
return keys return keys
@ -106,18 +120,28 @@ print u"Tests effectués avec les droits %s " % ', '.join(conn.droits)
# les adhérents et de toutes les machines # # les adhérents et de toutes les machines #
############################################### ###############################################
print "Appel de allMachinesAdherents" anim("Appel de allMachinesAdherents en rw")
machines, adherents = conn.allMachinesAdherents() try:
machines, adherents = conn.allMachinesAdherents(mode='rw')
anim("Recuperation des attributs des machines") except EnvironmentError as error:
machines_attrs_keys = keys_of_list_of_dict([m.attrs for m in machines]) print ERREUR
print OK if show_traceback: print traceback.format_exc()
else: print "\t%s" % error
exit(1)
except Exception as error:
print ERREUR
if show_traceback: print traceback.format_exc()
else: print "\t%r" % error
anim("Fallback en ro")
machines, adherents = conn.allMachinesAdherents()
print OK
else:
print OK
machines_attrs_keys = keys_of_list_of_dict(machines, 'machines')
print "Test des attributs des machines" print "Test des attributs des machines"
test_list_of_dict(machines_attrs_keys, machines) test_list_of_dict(machines_attrs_keys, machines)
anim("Recuperation des attributs des adherents") adherents_attrs_keys = keys_of_list_of_dict(adherents, 'adherents')
adherents_attrs_keys = keys_of_list_of_dict([a.attrs for a in adherents])
print OK
print "Test des attributs des adhérents" print "Test des attributs des adhérents"
test_list_of_dict(adherents_attrs_keys, adherents) test_list_of_dict(adherents_attrs_keys, adherents)