mirror of
https://github.com/pretix/pretix.git
synced 2026-05-04 15:04:03 +00:00
Use a choice field for invoice address countries
This commit is contained in:
@@ -3,6 +3,7 @@ from decimal import Decimal
|
||||
from unittest import mock
|
||||
|
||||
import pytest
|
||||
from django_countries.fields import Country
|
||||
from pytz import UTC
|
||||
|
||||
from pretix.base.models import InvoiceAddress, Order, OrderPosition
|
||||
@@ -29,7 +30,7 @@ def order(event, item):
|
||||
expires=datetime.datetime(2017, 12, 10, 10, 0, 0, tzinfo=UTC),
|
||||
total=23, payment_provider='banktransfer', locale='en'
|
||||
)
|
||||
InvoiceAddress.objects.create(order=o, company="Sample company")
|
||||
InvoiceAddress.objects.create(order=o, company="Sample company", country=Country('NZ'))
|
||||
OrderPosition.objects.create(
|
||||
order=o,
|
||||
item=item,
|
||||
@@ -82,7 +83,7 @@ TEST_ORDER_RES = {
|
||||
"street": "",
|
||||
"zipcode": "",
|
||||
"city": "",
|
||||
"country": "",
|
||||
"country": "NZ",
|
||||
"vat_id": ""
|
||||
},
|
||||
"positions": [TEST_ORDERPOSITION_RES],
|
||||
@@ -259,7 +260,7 @@ TEST_INVOICE_RES = {
|
||||
"number": "DUMMY-00001",
|
||||
"is_cancellation": False,
|
||||
"invoice_from": "",
|
||||
"invoice_to": "Sample company",
|
||||
"invoice_to": "Sample company\n\n\n \nNew Zealand",
|
||||
"date": "2017-12-10",
|
||||
"refers": None,
|
||||
"locale": "en",
|
||||
|
||||
@@ -4,6 +4,7 @@ from decimal import Decimal
|
||||
import pytest
|
||||
from django.db import DatabaseError
|
||||
from django.utils.timezone import now
|
||||
from django_countries.fields import Country
|
||||
|
||||
from pretix.base.models import (
|
||||
Event, Invoice, InvoiceAddress, Item, ItemVariation, Order, OrderPosition,
|
||||
@@ -71,15 +72,26 @@ def test_locale_user(env):
|
||||
assert inv.locale == order.locale
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_address_old_country(env):
|
||||
event, order = env
|
||||
event.settings.set('invoice_language', 'en')
|
||||
InvoiceAddress.objects.create(company='Acme Company', street='221B Baker Street',
|
||||
zipcode='12345', city='London', country_old='England', country='',
|
||||
order=order)
|
||||
inv = generate_invoice(order)
|
||||
assert inv.invoice_to == "Acme Company\n\n221B Baker Street\n12345 London\nEngland"
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_address(env):
|
||||
event, order = env
|
||||
event.settings.set('invoice_language', 'en')
|
||||
InvoiceAddress.objects.create(company='Acme Company', street='221B Baker Street',
|
||||
zipcode='12345', city='London', country='UK',
|
||||
zipcode='12345', city='London', country=Country('GB'),
|
||||
order=order)
|
||||
inv = generate_invoice(order)
|
||||
assert inv.invoice_to == "Acme Company\n\n221B Baker Street\n12345 London\nUK"
|
||||
assert inv.invoice_to == "Acme Company\n\n221B Baker Street\n12345 London\nUnited Kingdom"
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
@@ -87,8 +99,8 @@ def test_address_vat_id(env):
|
||||
event, order = env
|
||||
event.settings.set('invoice_language', 'en')
|
||||
InvoiceAddress.objects.create(company='Acme Company', street='221B Baker Street',
|
||||
name='Sherlock Holmes', zipcode='12345', city='London', country='UK',
|
||||
vat_id='UK1234567', order=order)
|
||||
name='Sherlock Holmes', zipcode='12345', city='London', country_old='UK',
|
||||
country='', vat_id='UK1234567', order=order)
|
||||
inv = generate_invoice(order)
|
||||
assert inv.invoice_to == "Acme Company\nSherlock Holmes\n221B Baker Street\n12345 London\nUK\nVAT-ID: UK1234567"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user