def test_interfaces(self): self.assertTrue(verifyObject(ITask, Task())) self.assertTrue(verifyObject(IValidatedTask, Estimation())) self.assertTrue(verifyObject(IPaidTask, Invoice())) self.assertTrue(verifyObject(IPaidTask, CancelInvoice())) self.assertTrue(verifyObject(IInvoice, Invoice())) self.assertTrue(verifyObject(IInvoice, CancelInvoice()))
def invoice(): inv = Invoice(**INVOICE) for line in LINES: inv.lines.append(InvoiceLine(**line)) for discount in DISCOUNTS: inv.discounts.append(DiscountLine(**discount)) return inv
def submit_success(self, appstruct): log.debug("Submitting invoice add") appstruct = get_invoice_dbdatas(appstruct) customer_id = appstruct["task"]['customer_id'] customer = Customer.get(customer_id) invoice = Invoice( self.context.company, customer, self.context, self.context.phases[0], self.request.user, ) invoice = merge_session_with_post( invoice, appstruct["task"] ) try: invoice = self.set_task_status(invoice) # Line handling invoice = add_lines_to_invoice(invoice, appstruct) self.dbsession.add(invoice) self.dbsession.flush() self.session.flash(u"La facture a bien été ajoutée.") except Forbidden, err: self.request.session.flash(err.message, queue='error')
def test_set_name(): invoice = Invoice() invoice.set_sequence_number(5) invoice.set_name() assert invoice.name == u"Facture 5" invoice.name = "" invoice.set_name(sold=True) assert invoice.name == u"Facture de solde" invoice.name = "" invoice.set_name(deposit=True) assert invoice.name == u"Facture d'acompte 5"
def invoice(project, user, customer, company, phase): task = Invoice( company, customer, project, phase, user, ) for key, value in TASK.items(): setattr(task, key, value) return task
def invoice(project, user, customer, company, phase): invoice = Invoice( company, customer, project, phase, user, ) invoice.line_groups = [TaskLineGroup(lines=[TaskLine(**LINE)])] for i in PAYMENTS: invoice.payments.append(Payment(**i)) return invoice
def test_set_number(): invoice = Invoice() invoice.customer = MagicMock(code="CLI1") invoice.project = MagicMock(code="PRO1") seq_number = 15 invoice.set_sequence_number(15) invoice.set_name() date = datetime.date(1969, 07, 31) invoice.taskDate = date invoice.set_number() assert invoice.number == u"PRO1_CLI1_F15_0769" invoice.set_number(deposit=True) assert invoice.number == u"PRO1_CLI1_FA15_0769"
def invoice(project, user, customer, company, phase): invoice = Invoice( company, customer, project, phase, user, ) for key, value in INVOICE.items(): setattr(invoice, key, value) for line in LINES: invoice.default_line_group.lines.append(TaskLine(**line)) for discount in DISCOUNTS: invoice.discounts.append(DiscountLine(**discount)) invoice.mentions = [TaskMention(label='1', title='t1', full_text='text')] invoice.address = customer.address return invoice
def func(req_type='mandatory', validation=False, add_req=True, **kwargs): if add_req: mk_business_type_file_types( ftypes['ftype1'], btypes['default'], 'invoice', req_type, validation ) if 'project' not in kwargs: kwargs['project'] = project node = Invoice( user=user, company=company, business_type_id=btypes['default'].id, **kwargs ) dbsession.add(node) dbsession.flush() SaleFileRequirementService.populate(node) return node
def invoice(): inv = Invoice(**INVOICE) inv.lines = [InvoiceLine(**LINE)] for i in PAYMENTS: inv.payments.append(Payment(**i)) return inv