Пример #1
0
 def test_wrong_issue_date(self):
     with pytest.raises(ValueError):
         i = Invoice()
         i.issue_date = "asdef"
     with pytest.raises(ValueError):
         i = Invoice()
         i.issue_date = 123
Пример #2
0
def invoice2():
    invoice = Invoice()
    seller = Entity(name="Acme Inc.", tax_scheme="VAT",
                    tax_scheme_id="ES34626691F", country="ES",
                    party_legal_entity_id="ES34626691F",
                    registration_name="Acme INc.", mail="*****@*****.**",
                    endpoint="ES76281415Y", endpoint_scheme="ES:VAT",
                    address="easy street", postalzone="08080",
                    city="Barcelona")
    buyer = Entity(name="Corp Inc.", tax_scheme="VAT",
                   tax_scheme_id="ES76281415Y", country="ES",
                   party_legal_entity_id="ES76281415Y",
                   registration_name="Corp INc.", mail="*****@*****.**",
                   endpoint="ES76281415Y", endpoint_scheme="ES:VAT",
                   address="busy street", postalzone="08080",
                   city="Barcelona")
    invoice.buyer_party = buyer
    invoice.seller_party = seller
    invoice.due_date = "2018-09-11"
    invoice.issue_date = "2018-06-11"
    # lines
    il1 = InvoiceLine(quantity=5, unit_code="EA", price=2,
                      item_name='test 1', currency="EUR",
                      tax_percent=0.21, tax_category="S")
    il2 = InvoiceLine(quantity=2, unit_code="EA", price=25,
                      item_name='test 2', currency="EUR",
                      tax_percent=0.21, tax_category="S")
    invoice.add_lines_from([il1, il2])
    # discount and charge
    invoice.charge = 10
    invoice.discount = 20
    return invoice
Пример #3
0
 def test_set_issue_date(self):
     dts = {
         "2018-09-11": "%Y-%m-%d",
         "20180911": "%Y%m%d",
         "21-06-2018": "%d-%m-%Y",
         "2018/12/12": "%Y/%m/%d",
         "12/12/2018": "%d/%m/%Y",
     }
     i = Invoice()
     for date, fmt in dts.items():
         i.issue_date = date
         assert i.issue_date.strftime(fmt) == date
Пример #4
0
def invoice3():
    invoice = Invoice()
    seller = Entity(name="Acme Inc.",
                    tax_scheme="VAT",
                    tax_scheme_id="ES34626691F",
                    country="ES",
                    party_legal_entity_id="ES34626691F",
                    registration_name="Acme INc.",
                    mail="*****@*****.**",
                    endpoint="ES76281415Y",
                    endpoint_scheme="ES:VAT",
                    address="easy street",
                    postalzone="08080",
                    city="Barcelona")
    bank_info_seller = BankInfo(iban="ES661234563156", bic="AAAABBCCDDD")
    seller.bank_info = bank_info_seller
    buyer = Entity(name="Corp Inc.",
                   tax_scheme="VAT",
                   tax_scheme_id="ES76281415Y",
                   country="ES",
                   party_legal_entity_id="ES76281415Y",
                   registration_name="Corp INc.",
                   mail="*****@*****.**",
                   endpoint="ES76281415Y",
                   endpoint_scheme="ES:VAT",
                   address="busy street",
                   postalzone="08080",
                   city="Barcelona")
    bank_info_buyer = BankInfo(iban="ES661234567321",
                               bic="AAAABBCCDDD",
                               mandate_reference_identifier="123")
    buyer.bank_info = bank_info_buyer
    invoice.buyer_party = buyer
    invoice.seller_party = seller
    invoice.due_date = "2018-09-11"
    invoice.issue_date = "2018-06-11"
    invoice.payment_means_code = "31"
    # lines
    il1 = InvoiceLine(quantity=11,
                      unit_code="EA",
                      price=2,
                      item_name='test 1',
                      currency="EUR",
                      tax_percent=0.21,
                      tax_category="S")
    il2 = InvoiceLine(quantity=2,
                      unit_code="EA",
                      price=25,
                      item_name='test 2',
                      currency="EUR",
                      tax_percent=0.21,
                      tax_category="S")
    il3 = InvoiceLine(quantity=5,
                      unit_code="EA",
                      price=3,
                      item_name='test 3',
                      currency="EUR",
                      tax_percent=0.1,
                      tax_category="S")
    invoice.add_lines_from([il1, il2, il3])
    return invoice
Пример #5
0
 def test_set_dates_datetime(self):
     i = Invoice()
     i.issue_date = datetime(2018, 7, 10)
     assert i.issue_date == datetime(2018, 7, 10)
     i.due_date = datetime(2018, 9, 10)
     assert i.due_date == datetime(2018, 9, 10)
Пример #6
0
 def test_set_dates_none(self):
     i = Invoice()
     i.issue_date = None
     assert i.issue_date is None
     i.due_date = None
     assert i.due_date is None