+ mail.agregarResultado(prueba)
+ return prueba
+ # Verifico salidas estándar/de error
+ prueba.pasada = True # Asumo que está bien, ya habrá tiempo para cambiarlo
+ obs = diff(prueba, mail, proc.stdout.readlines(),
+ file(os.path.join(caso_de_prueba.path, 'stdout')).readlines(),
+ 'stdout', longname='La salida estándar')
+ obs += diff(prueba, mail, proc.stderr.readlines(),
+ file(os.path.join(caso_de_prueba.path, 'stderr')).readlines(),
+ 'stderr', longname='La salida de error')
+ for f in caso_de_prueba.archivosSalida:
+ if f not in prueba.archivosSalida:
+ #TODO agregar error FALTA ARCHIVO
+ log.debug('Falta el archivo %s y no lo hizo.', f)
+ prueba.pasada = False
+ obs += "- Falta el archivo de salida '%s'.\n" % f
+ continue
+ obs += diff(prueba, mail,
+ file(os.path.join(intento.chrootPath, f)).readlines(),
+ file(os.path.join(caso_de_prueba.pathSalidas, f)).readlines(), f)
+ for f in prueba.archivosSalida - (caso_de_prueba.archivosSalida | caso_de_prueba.archivosEntrada):
+ #TODO agregar error SOBRA ARCHIVO
+ log.debug('El programa debía generar el archivo %s y no lo hizo.', f)
+ prueba.pasada = False
+ obs += "- Se generó un archivo ('%s') que no se esperaba.\n" % f