def test_parciales_de_materia_ordenados_con_parciales_de_numeros_diferentes( self): """ Debería devolver un diccionario con posiciones igual a la cantidad de números diferentes. """ anio1 = 2018 anio2 = 2017 cuatri1 = ConjuntoDeEnunciadosConCuatrimestre.PRIMERO cuatri2 = ConjuntoDeEnunciadosConCuatrimestre.VERANO cuatri3 = ConjuntoDeEnunciadosConCuatrimestre.SEGUNDO cuatri4 = ConjuntoDeEnunciadosConCuatrimestre.PRIMERO primeros = [ Parcial(materia=self.materia, anio=anio1, cuatrimestre=cuatri1, numero=1), Parcial(materia=self.materia, anio=anio1, cuatrimestre=cuatri2, numero=1), ] segundos = [ Parcial(materia=self.materia, anio=anio1, cuatrimestre=cuatri1, numero=2), Parcial(materia=self.materia, anio=anio2, cuatrimestre=cuatri3, numero=2), Parcial(materia=self.materia, anio=anio2, cuatrimestre=cuatri4, numero=2), ] for parcial in primeros: parcial.save() for parcial in segundos: parcial.save() ordenados = parciales_de_materia_ordenados(self.materia) self.assertEquals(len(ordenados), 2) assert_lista_equals(self, ordenados[1], primeros) assert_lista_equals(self, ordenados[2], segundos)
def test_file_path_de_recuperatorio(self): numero_parcial = 3 cuatrimestre = ConjuntoDeEnunciadosConCuatrimestre.SEGUNDO anio = 2014 parcial = Parcial(materia=self.materia, anio=anio, cuatrimestre=cuatrimestre, numero=numero_parcial, recuperatorio=True) path = conjunto_de_enunciados_file_path(parcial, 'archivo.rar') expected = '{materia}/recuperatorios/{anio}/{cuatrimestre}/{numero}.rar'.format( materia=self.materia.pk, anio=anio, cuatrimestre=cuatrimestre, numero=numero_parcial) self.assertEquals(expected, path)
def test_file_path_de_parcial_no_recuperatorio(self): numero_parcial = 4 cuatrimestre = ConjuntoDeEnunciadosConCuatrimestre.PRIMERO anio = 2012 parcial = Parcial(materia=self.materia, anio=anio, cuatrimestre=cuatrimestre, numero=numero_parcial, recuperatorio=False) path = conjunto_de_enunciados_file_path(parcial, 'archivo.jpeg') expected = '{materia}/parciales/{anio}/{cuatrimestre}/{numero}.jpeg'.format( materia=self.materia.pk, anio=anio, cuatrimestre=cuatrimestre, numero=numero_parcial) self.assertEquals(expected, path)
def test_con_parcial_no_guardado(self): """Debería devolver el mismo Parcial.""" parcial = Parcial() self.assertEqual(castear_a_subclase(parcial), parcial)
def test_parciales_de_materia_ordenados_con_primeros_parciales_diferente_anio( self): """ Debería devolver el diccionario con los primeros parciales ordenados de último año a primero. """ anio1 = 2018 anio2 = 2017 cuatri1 = ConjuntoDeEnunciadosConCuatrimestre.PRIMERO cuatri2 = ConjuntoDeEnunciadosConCuatrimestre.VERANO cuatri3 = ConjuntoDeEnunciadosConCuatrimestre.SEGUNDO cuatri4 = ConjuntoDeEnunciadosConCuatrimestre.PRIMERO parcial1 = Parcial(materia=self.materia, anio=anio1, cuatrimestre=cuatri1, numero=1) parcial2 = Parcial(materia=self.materia, anio=anio1, cuatrimestre=cuatri2, numero=1) parcial3 = Parcial(materia=self.materia, anio=anio2, cuatrimestre=cuatri3, numero=1) parcial4 = Parcial(materia=self.materia, anio=anio2, cuatrimestre=cuatri4, numero=1) # Los guardamos en desorden parcial2.save() parcial1.save() parcial4.save() parcial3.save() parciales = [parcial1, parcial2, parcial3, parcial4] ordenados = parciales_de_materia_ordenados(self.materia) self.assertEquals(len(ordenados), 1) assert_lista_equals(self, ordenados[1], parciales)
def test_parciales_de_materia_ordenados_con_primeros_parciales_con_igual_anio( self): """ Debería devolver un diccionario con los primeros parciales ordenados en la primer posición. """ anio = 2018 cuatri1 = ConjuntoDeEnunciadosConCuatrimestre.VERANO cuatri2 = ConjuntoDeEnunciadosConCuatrimestre.PRIMERO cuatri3 = ConjuntoDeEnunciadosConCuatrimestre.SEGUNDO parcial1 = Parcial(materia=self.materia, anio=anio, cuatrimestre=cuatri1, numero=1) parcial2 = Parcial(materia=self.materia, anio=anio, cuatrimestre=cuatri2, numero=1) parcial3 = Parcial(materia=self.materia, anio=anio, cuatrimestre=cuatri3, numero=1) # Los guardamos en desorden parcial2.save() parcial1.save() parcial3.save() # Los ordenamos de último a primero parciales = [parcial3, parcial2, parcial1] ordenados = parciales_de_materia_ordenados(self.materia) self.assertEquals(len(ordenados), 1) assert_lista_equals(self, ordenados[1], parciales)
def test_parciales_de_materia_ordenados_con_recuperatorios(self): """Debería devolver los recuperatorios antes que los parciales.""" cuatri1 = ConjuntoDeEnunciadosConCuatrimestre.PRIMERO cuatri2 = ConjuntoDeEnunciadosConCuatrimestre.SEGUNDO parcial1 = Parcial(materia=self.materia, anio=2018, cuatrimestre=cuatri1, numero=1) recu = Parcial(materia=self.materia, anio=2018, cuatrimestre=cuatri1, numero=1, recuperatorio=True) parcial2 = Parcial(materia=self.materia, anio=2018, cuatrimestre=cuatri2, numero=1) parcial1.save() parcial2.save() recu.save() parciales = [parcial2, recu, parcial1] ordenados = parciales_de_materia_ordenados(self.materia) self.assertEquals(len(ordenados), 1) assert_lista_equals(self, ordenados[1], parciales)