def setUpTestData(cls): """Prep an invoice with two enrolments with £50 and £100 outstanding Todo: figure out a concise way to do this """ cls.user = User(username='******') cls.invoice = factories.InvoiceFactory() fees = [FeeFactory(amount=50), FeeFactory(amount=100)] cls.enrolments = [EnrolmentFactory(module=fee.module) for fee in fees] for fee, enrolment in zip(fees, cls.enrolments): transaction = finance_services.add_enrolment_fee( enrolment_id=enrolment.id, fee_id=fee.id, user=cls.user) services.attach_transaction_to_invoice(transaction=transaction, invoice=cls.invoice)
def setUpTestData(cls): super().setUpTestData() # Setup an enrolment with fees owing. todo: consider a factory for this sort of case cls.enrolment = EnrolmentFactory() fee = FeeFactory(module=cls.enrolment.module) services.add_enrolment_fee(enrolment_id=cls.enrolment.id, fee_id=fee.id, user=cls.user) cls.url = reverse('finance:choose-multiple-enrolments', args=[cls.enrolment.qa.student.pk])
def test_max_discount(self): fee = FeeFactory() with self.assertRaises(ValueError): services.add_enrolment_fee( discount=100, enrolment_id=self.enrolment.id, fee_id=fee.id, user=self.user, )
def test_adding_catering_and_accommodation(self): fee = FeeFactory(is_catering=True, is_single_accom=True) services.add_enrolment_fee( enrolment_id=self.enrolment.id, fee_id=fee.id, user=self.user, ) self.assertEqual(self.enrolment.accommodation.count(), 1) self.assertEqual(self.enrolment.catering.count(), 1)
def setUpTestData(cls): """Prep an invoice""" cls.user = User(username='******') cls.invoice = factories.InvoiceFactory() fee = FeeFactory(amount=100) cls.enrolment = EnrolmentFactory(module=fee.module) transaction = finance_services.add_enrolment_fee( enrolment_id=cls.enrolment.id, fee_id=fee.id, user=cls.user) services.attach_transaction_to_invoice(transaction=transaction, invoice=cls.invoice)
def setUpTestData(cls): super().setUpTestData() # Setup an enrolment with one fee added cls.enrolment = factories.EnrolmentFactory() cls.fee = FeeFactory(module=cls.enrolment.module) add_enrolment_fee( enrolment_id=cls.enrolment.id, fee_id=cls.fee.id, user=cls.user, ) cls.url = cls.enrolment.get_absolute_url()
def setUpTestData(cls): cls.source = models.Module.objects.create( title='Source title', code='T00T000TTT', ) cls.target = models.Module.objects.create( title='Target title', code='T01T000TTT', ) FeeFactory( module=cls.source, amount=100, )
def test_render_places_other(self): fee = FeeFactory.build() self.assertEqual(self.table.render_places_left(fee), '—')
def test_render_places_catering(self): fee = FeeFactory(is_catering=True, allocation=20) self.assertEqual(self.table.render_places_left(fee), fee.allocation) fee.allocation = None fee.save() self.assertEqual(self.table.render_places_left(fee), '∞')
def test_render_places_twin(self): fee = FeeFactory.build(is_twin_accom=True, module=self.module) self.assertEqual(self.table.render_places_left(fee), self.module.twin_places)
def setUpTestData(cls): super().setUpTestData() cls.enrolment = EnrolmentFactory() cls.fees = FeeFactory.create_batch(module=cls.enrolment.module, size=2) cls.url = reverse('finance:add-module-fees', args=[cls.enrolment.pk])
def setUpTestData(cls): super().setUpTestData() cls.enrolment = EnrolmentFactory() cls.fee = FeeFactory(module=cls.enrolment.module) cls.url = reverse('finance:add-fees', args=[cls.enrolment.pk])
def setUpTestData(cls): super().setUpTestData() cls.module = factories.ModuleFactory() FeeFactory(module=cls.module, type_id=FeeTypes.PROGRAMME, amount=500) cls.tutor_module = TutorModuleFactory(module=cls.module, is_teaching=True)
def setUpTestData(cls): cls.user = get_user_model().objects.create_user(username='******') cls.source_module = factories.ModuleFactory() cls.target_module = factories.ModuleFactory() cls.source_fee = FeeFactory(module=cls.source_module) cls.url = reverse('module:copy-fees', args=[cls.target_module.pk])