+ mail.agregarResultado(prueba)
+ return prueba
+ # Verifico salidas estándar/de error
+ prueba.pasada = True # Asumo que está bien, ya habrá tiempo para cambiarlo
+ obs = ''
+ if usa_stdout():
+ obs += diff(prueba, mail, proc.stdout.readlines(),
+ file(os.path.join(caso_de_prueba.path, 'stdout')).readlines(),
+ caso_de_prueba.nombre + '.stdout', longname='La salida estándar')
+ if usa_stderr():
+ obs += diff(prueba, mail, proc.stderr.readlines(),
+ file(os.path.join(caso_de_prueba.path, 'stderr')).readlines(),
+ caso_de_prueba.nombre + '.stderr', longname='La salida de error')
+ for f in caso_de_prueba.archivosSalida:
+ if f not in prueba.archivosSalida:
+ 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(caso_de_prueba), f)).readlines(),
+ file(os.path.join(caso_de_prueba.pathSalidas, f)).readlines(),
+ caso_de_prueba.nombre + '.' + f)
+ for f in prueba.archivosSalida - (caso_de_prueba.archivosSalida | caso_de_prueba.archivosEntrada):
+ 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