Ignore:
Timestamp:
22 Mar 2019, 11:07:57 (6 years ago)
Author:
Henrik Bettermann
Message:

Student must pay school fee only in states cleared and returning.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/kofacustom.edopoly/trunk/src/kofacustom/edopoly/students/tests/test_utils.py

    r15344 r15361  
    5858        self.assertEqual(msg, None)
    5959        return
     60
     61    def test_set_payment_details(self):
     62        self.student['studycourse'].certificate.school_fee_1 = 6666.0
     63        self.student['studycourse'].certificate.study_mode = 'nd_pt'
     64        IWorkflowState(self.student).setState('returning')
     65        #self.student.nationality = u'NG'
     66        #self.student.lga = 'ebonyi_ukaba'
     67        utils = getUtility(IStudentsUtils)
     68        configuration = createObject('waeup.SessionConfiguration')
     69        configuration.academic_session = 2005
     70        self.app['configuration'].addSessionConfiguration(configuration)
     71        self.app['configuration']['2004'].ict_entre_fee = 170.0
     72        self.app['configuration']['2005'].ict_entre_fee = 180.0
     73        error, payment = utils.setPaymentDetails('schoolfee',self.student)
     74        self.assertEqual(error, u'Pay ICT fee(s) first.')
     75        error, payment = utils.setPaymentDetails('ict_entre',self.student)
     76        self.assertEqual(error, None)
     77        self.assertEqual(payment.p_level, 200)
     78        self.assertEqual(payment.p_session, 2005)
     79        self.assertEqual(payment.amount_auth, 180.0)
     80        payment.p_state = 'paid'
     81        self.student['payments']['any_key'] = payment
     82        error, payment = utils.setPaymentDetails('schoolfee',self.student)
     83        self.assertEqual(error, None)
     84        self.assertEqual(payment.p_level, 200)
     85        self.assertEqual(payment.p_session, 2005)
     86        self.assertEqual(payment.amount_auth, 6666.0)
     87
     88        IWorkflowState(self.student).setState('cleared')
     89        error, payment = utils.setPaymentDetails('ict_entre',self.student)
     90        self.assertEqual(error, None)
     91        self.assertEqual(payment.p_level, 100)
     92        self.assertEqual(payment.p_session, 2004)
     93        self.assertEqual(payment.amount_auth, 170.0)
     94        payment.p_state = 'paid'
     95        self.student['payments']['any_key_2'] = payment
     96        error, payment = utils.setPaymentDetails('schoolfee',self.student)
     97        self.assertEqual(error, None)
     98        self.assertEqual(payment.p_level, 100)
     99        self.assertEqual(payment.p_session, 2004)
     100        self.assertEqual(payment.amount_auth, 6666.0)
Note: See TracChangeset for help on using the changeset viewer.