]> git.llucax.com Git - software/sercom.git/blobdiff - sercom/model.py
Controlador MisEntregas para los Alumnos
[software/sercom.git] / sercom / model.py
index a65b03a918cf689fb1f5e02f78c427aa52f65f90..a99995f6a86944afc3ca47e20a49766709b77d11 100644 (file)
@@ -476,31 +476,17 @@ class Enunciado(SQLObject): #{{{
         return self.nombre
 #}}}
 
         return self.nombre
 #}}}
 
-class CasoDePrueba(SQLObject): #{{{
+class CasoDePrueba(Comando): #{{{
     # Clave
     enunciado           = ForeignKey('Enunciado', cascade=True)
     nombre              = UnicodeCol(length=40, notNone=True)
     pk                  = DatabaseIndex(enunciado, nombre, unique=True)
     # Clave
     enunciado           = ForeignKey('Enunciado', cascade=True)
     nombre              = UnicodeCol(length=40, notNone=True)
     pk                  = DatabaseIndex(enunciado, nombre, unique=True)
-    # Campos
-    descripcion         = UnicodeCol(length=255, default=None)
-    terminar_si_falla   = BoolCol(notNone=True, default=False)
-    rechazar_si_falla   = BoolCol(notNone=True, default=True)
-    parametros          = ParamsCol(length=255, default=None)
-    retorno             = IntCol(default=None)
-    tiempo_cpu          = FloatCol(default=None)
-    archivos_entrada    = BLOBCol(default=None) # ZIP con archivos de entrada
-                                                # stdin es caso especial
-    archivos_salida     = BLOBCol(default=None) # ZIP con archivos de salida
-                                                # stdout y stderr son especiales
-    activo              = BoolCol(notNone=True, default=True)
     # Joins
     pruebas             = MultipleJoin('Prueba')
 
     def __repr__(self):
     # Joins
     pruebas             = MultipleJoin('Prueba')
 
     def __repr__(self):
-        return 'CasoDePrueba(enunciado=%s, nombre=%s, parametros=%s, ' \
-            'retorno=%s, tiempo_cpu=%s, descripcion=%s)' \
-                % (srepr(self.enunciado), self.nombre, self.parametros,
-                    self.retorno, self.tiempo_cpu, self.descripcion)
+        return super(ComandoFuente, self).__repr__('enunciado=%s, nombre=%s'
+            % (srepr(self.enunciado), self.nombre))
 
     def shortrepr(self):
         return '%s:%s' % (self.enunciado.shortrepr(), self.nombre)
 
     def shortrepr(self):
         return '%s:%s' % (self.enunciado.shortrepr(), self.nombre)
@@ -756,6 +742,7 @@ class Entrega(SQLObject): #{{{
     pk                  = DatabaseIndex(instancia, entregador, fecha, unique=True)
     # Campos
     archivos            = BLOBCol(notNone=True) # ZIP con fuentes de la entrega
     pk                  = DatabaseIndex(instancia, entregador, fecha, unique=True)
     # Campos
     archivos            = BLOBCol(notNone=True) # ZIP con fuentes de la entrega
+    archivos_nombre     = UnicodeCol(length=255)
     correcta            = BoolCol(default=None) # None es que no se sabe qué pasó
     inicio_tareas       = DateTimeCol(default=None) # Si es None no se procesó
     fin_tareas          = DateTimeCol(default=None) # Si es None pero inicio no, se está procesando
     correcta            = BoolCol(default=None) # None es que no se sabe qué pasó
     inicio_tareas       = DateTimeCol(default=None) # Si es None no se procesó
     fin_tareas          = DateTimeCol(default=None) # Si es None pero inicio no, se está procesando