CSV import: Do not skip rows without a reference

This commit is contained in:
Raphael Michel
2019-04-08 17:55:28 +02:00
parent 36e0afc09e
commit 0f58e1c396
2 changed files with 15 additions and 3 deletions
+1 -2
View File
@@ -28,8 +28,7 @@ def parse(data, hint):
resrow['amount'] = re.sub('[^0-9,+.-]', '', resrow['amount'])
if hint.get('date') is not None:
resrow['date'] = row[int(hint.get('date'))].strip()
if len(resrow['amount']) == 0 or 'amount' not in resrow \
or len(resrow['reference']) == 0 or resrow['date'] == '':
if len(resrow['amount']) == 0 or 'amount' not in resrow or resrow['date'] == '':
# This is probably a headline or something other special.
continue
if resrow['reference'] or resrow['payer']:
+14 -1
View File
@@ -11,7 +11,7 @@ from pretix.base.models import (
Event, Item, Order, OrderFee, OrderPayment, OrderPosition, Organizer,
Quota, Team, User,
)
from pretix.plugins.banktransfer.models import BankImportJob
from pretix.plugins.banktransfer.models import BankImportJob, BankTransaction
from pretix.plugins.banktransfer.tasks import process_banktransfers
@@ -300,6 +300,19 @@ def test_wrong_event_organizer(env, orga_job):
assert env[2].status == Order.STATUS_PENDING
@pytest.mark.django_db
def test_keep_unmatched(env, orga_job):
process_banktransfers(orga_job, [{
'payer': 'Karla Kundin',
'reference': 'No useful reference',
'date': '2016-01-26',
'amount': '23.00'
}])
job = BankImportJob.objects.last()
t = job.transactions.last()
assert t.state == BankTransaction.STATE_NOMATCH
@pytest.mark.django_db
def test_import_very_long_csv_file(client, env):
client.login(email='dummy@dummy.dummy', password='dummy')