Ignore:
Timestamp:
4 Oct 2012, 14:56:44 (12 years ago)
Author:
Henrik Bettermann
Message:

Update current level_verdict when importing verdicts.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/waeup.kofa/trunk/src/waeup/kofa/students/tests/test_batching.py

    r9284 r9293  
    360360            self.csv_file, STUDENT_HEADER_FIELDS)
    361361        self.assertEqual(num_warns,0)
    362         self.assertEqual(len(self.app['students']), 8)
     362        self.assertEqual(len(self.app['students']), 9)
    363363        self.assertEqual(self.app['students']['X666666'].reg_number,'1')
    364364        self.assertEqual(
     
    594594            studycourse_file, STUDYCOURSE_HEADER_FIELDS,'update')
    595595        shutil.rmtree(os.path.dirname(fin_file))
     596        # Import study levels
     597        self.csv_file = os.path.join(
     598            self.workdir, 'sample_studylevel_data.csv')
     599        open(self.csv_file, 'wb').write(STUDYLEVEL_SAMPLE_DATA)
     600        processor = StudentStudyLevelProcessor()
     601        num, num_warns, fin_file, fail_file = processor.doImport(
     602            self.csv_file, STUDYLEVEL_HEADER_FIELDS,'create')
     603        content = open(fail_file).read()
     604        shutil.rmtree(os.path.dirname(fin_file))
    596605
    597606        self.processor = StudentVerdictProcessor()
     
    602611
    603612    def test_import(self):
    604         num, num_warns, fin_file, fail_file = self.processor.doImport(
    605             self.csv_file, VERDICT_HEADER_FIELDS,'update')
    606         self.assertEqual(num_warns,4)
    607613        studycourse = self.processor.getEntry(dict(matric_number='100000'),
    608614                                              self.app)
     615        self.assertEqual(studycourse['200'].level_verdict, None)
    609616        student = self.processor.getParent(
    610617            dict(matric_number='100000'), self.app)
    611         self.assertEqual(studycourse.current_verdict, 'A')
     618        num, num_warns, fin_file, fail_file = self.processor.doImport(
     619            self.csv_file, VERDICT_HEADER_FIELDS,'update')
     620        content = open(fail_file).read()
     621        self.assertEqual(num_warns,5)
     622        self.assertEqual(studycourse.current_verdict, '0')
    612623        self.assertEqual(student.state, 'returning')
    613624        self.assertEqual(studycourse.current_level, 200)
     625        self.assertEqual(studycourse['200'].level_verdict, '0')
    614626        student = self.processor.getParent(
    615627            dict(matric_number='100005'), self.app)
    616         self.assertEqual(studycourse.current_verdict, 'A')
     628        self.assertEqual(studycourse.current_verdict, '0')
    617629        self.assertEqual(student.state, 'returning')
    618630        self.assertEqual(studycourse.current_level, 200)
     
    625637            '2007,C,<IGNORE>,100002,200,Current session does not correspond.\r\n'
    626638            '2008,A,<IGNORE>,100003,200,Student in wrong state.\r\n'
    627             '2008,<IGNORE>,<IGNORE>,100004,200,Verdict is missing.\r\n'
     639            '2008,<IGNORE>,<IGNORE>,100004,200,No verdict in import file.\r\n'
     640            '2008,A,True,100007,200,Study level object is missing.\r\n'
    628641            )
    629642        shutil.rmtree(os.path.dirname(fin_file))
     
    685698        self.assertEqual(studylevel.__parent__.certificate.code, u'CERT1')
    686699        self.assertEqual(studylevel.level_session, 2008)
    687         self.assertEqual(studylevel.level_verdict, 'A')
     700        self.assertEqual(studylevel.level_verdict, None)
    688701        self.assertEqual(studylevel.level, 100)
    689702        shutil.rmtree(os.path.dirname(fin_file))
Note: See TracChangeset for help on using the changeset viewer.