tests: upload files as bytes

This commit is contained in:
Frédéric Péters 2020-04-12 10:23:31 +02:00
parent fe93c8c12f
commit 0d9a596b56
3 changed files with 6 additions and 6 deletions

View File

@ -54,10 +54,10 @@ def mocked_request_get(*args, **kwargs):
return MockResponse(ATOM_FEED)
elif args[0] == 'http://example.com/logo.png':
logo_path = os.path.join(os.path.dirname(__file__), 'media', 'logo.png')
return MockResponse(file(logo_path).read())
return MockResponse(open(logo_path, 'rb').read())
elif args[0] == 'http://example.com/folder/logo.png':
logo_path = os.path.join(os.path.dirname(__file__), 'media', 'another_logo.png')
return MockResponse(file(logo_path).read())
return MockResponse(open(logo_path, 'rb').read())
else:
return MockResponse(None, ok=False)

View File

@ -96,7 +96,7 @@ def test_check_inline_images(mocked_get, app, categories, announces, mailoutbox)
storage = DefaultStorage()
media_path = os.path.join(os.path.dirname(__file__), 'media')
image_name = 'logo.png'
image_name = storage.save(image_name, file(os.path.join(media_path, image_name)))
image_name = storage.save(image_name, open(os.path.join(media_path, image_name), 'rb'))
total_sent = 0
for i, announce in enumerate(announces):
img_src = "/media/%s" % image_name

View File

@ -46,7 +46,7 @@ def test_subscribe_from_csv(app, admin, categories):
for c in categories:
page = app.get(reverse('subscriptions-import', kwargs={'slug': c.slug}))
form = page.form
form['subscribers'] = Upload('users.csv', CSV_CONTENT)
form['subscribers'] = Upload('users.csv', CSV_CONTENT.encode('utf-8'))
res = form.submit()
assert res.status_code == 302
assert Subscription.objects.filter(category=c).count() == len(CSV_CONTENT.splitlines())
@ -57,7 +57,7 @@ def test_subscribe_from_csv_with_empty_lines(app, admin, categories):
for c in categories:
page = app.get(reverse('subscriptions-import', kwargs={'slug': c.slug}))
form = page.form
form['subscribers'] = Upload('users.csv', content)
form['subscribers'] = Upload('users.csv', content.encode('utf-8'))
res = form.submit()
assert res.status_code == 302
assert Subscription.objects.filter(category=c).count() == len(CSV_CONTENT.splitlines())
@ -68,7 +68,7 @@ def test_subscribe_with_invalid_email(app, admin, categories):
for category in categories:
page = app.get(reverse('subscriptions-import', kwargs={'slug': category.slug}))
form = page.form
form['subscribers'] = Upload('users.csv', content)
form['subscribers'] = Upload('users.csv', content.encode('utf-8'))
page = form.submit()
assert page.status_code == 200
page.mustcontain('Invalid email address at line')