diff --git a/stages/test_files/CLOEE2_Export_FE_2018.xlsx b/stages/test_files/CLOEE2_Export_FE_2018.xlsx index 3de7548..c3cdb38 100644 Binary files a/stages/test_files/CLOEE2_Export_FE_2018.xlsx and b/stages/test_files/CLOEE2_Export_FE_2018.xlsx differ diff --git a/stages/tests.py b/stages/tests.py index ef342da..bfd0371 100644 --- a/stages/tests.py +++ b/stages/tests.py @@ -441,40 +441,44 @@ class ImportTests(TestCase): """ Import of the main students file. """ + lev1 = Level.objects.create(name='1') + lev2 = Level.objects.create(name='2') + assc = Section.objects.create(name='ASSC') + k1 = Klass.objects.create(name='1ASSCFEa', section=assc, level=lev1) + # An existing student, klass should be changed. + Student.objects.create(ext_id=11111, first_name="Séraphin", last_name="Lampion", klass=k1) + path = os.path.join(os.path.dirname(__file__), 'test_files', 'CLOEE2_Export_FE_2018.xlsx') self.client.login(username='me', password='mepassword') with open(path, 'rb') as fh: response = self.client.post(reverse('import-students'), {'upload': fh}, follow=True) msg = "\n".join(str(m) for m in response.context['messages']) - self.assertIn("La classe '1ASSCFEa' n'existe pas encore", msg) + self.assertIn("La classe '2ASSCFEa' n'existe pas encore", msg) - lev1 = Level.objects.create(name='1') - lev2 = Level.objects.create(name='2') - Klass.objects.create( - name='1ASSCFEa', - section=Section.objects.create(name='ASSC'), - level=lev1, - ) + Klass.objects.create(name='2ASSCFEa', section=assc, level=lev2) Klass.objects.create( name='2EDEpe', section=Section.objects.create(name='EDE'), level=lev2, ) Klass.objects.create( - name='1EDS18-20', + name='2EDS18-20', section=Section.objects.create(name='EDS'), - level=lev1, + level=lev2, ) with open(path, 'rb') as fh: response = self.client.post(reverse('import-students'), {'upload': fh}, follow=True) msg = "\n".join(str(m) for m in response.context['messages']) - self.assertIn("Objets créés : 3", msg) + self.assertIn("Objets créés : 2", msg) + self.assertIn("Objets modifiés : 1", msg) - student = Student.objects.get(ext_id=22222) - self.assertEqual(student.corporation.name, 'Accueil Haut les mains') - self.assertFalse(student.dispense_eps) + student1 = Student.objects.get(ext_id=11111) + self.assertEqual(student1.klass.name, '2ASSCFEa') + student2 = Student.objects.get(ext_id=22222) + self.assertEqual(student2.corporation.name, 'Accueil Haut les mains') + self.assertFalse(student2.dispense_eps) # Instructor not set through this import - self.assertIsNone(student.instructor) + self.assertIsNone(student2.instructor) def test_import_hp(self): teacher = Teacher.objects.create(