diff options
Diffstat (limited to 'deluge/tests/test_webserver.py')
-rw-r--r-- | deluge/tests/test_webserver.py | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/deluge/tests/test_webserver.py b/deluge/tests/test_webserver.py index d9684bacd..e1588fdf3 100644 --- a/deluge/tests/test_webserver.py +++ b/deluge/tests/test_webserver.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # # Copyright (C) 2016 bendikro <bro.devel+deluge@gmail.com> # @@ -7,13 +6,12 @@ # See LICENSE for more details. # -from __future__ import unicode_literals - import json as json_lib from io import BytesIO +import pytest_twisted import twisted.web.client -from twisted.internet import defer, reactor +from twisted.internet import reactor from twisted.web.client import Agent, FileBodyProducer from twisted.web.http_headers import Headers @@ -24,8 +22,8 @@ from .common_web import WebServerMockBase, WebServerTestBase common.disable_new_release_check() -class WebServerTestCase(WebServerTestBase, WebServerMockBase): - @defer.inlineCallbacks +class TestWebServer(WebServerTestBase, WebServerMockBase): + @pytest_twisted.inlineCallbacks def test_get_torrent_info(self): agent = Agent(reactor) @@ -37,7 +35,8 @@ class WebServerTestCase(WebServerTestBase, WebServerMockBase): # UnicodeDecodeError: 'utf8' codec can't decode byte 0xe5 in position 0: invalid continuation byte filename = get_test_data_file('filehash_field.torrent') input_file = ( - '{"params": ["%s"], "method": "web.get_torrent_info", "id": 22}' % filename + '{"params": ["%s"], "method": "web.get_torrent_info", "id": 22}' + % filename.replace('\\', '\\\\') ) headers = { b'User-Agent': ['Twisted Web Client Example'], @@ -51,9 +50,11 @@ class WebServerTestCase(WebServerTestBase, WebServerMockBase): Headers(headers), FileBodyProducer(BytesIO(input_file.encode('utf-8'))), ) - body = yield twisted.web.client.readBody(d) - json = json_lib.loads(body.decode()) - self.assertEqual(None, json['error']) - self.assertEqual('torrent_filehash', json['result']['name']) + try: + json = json_lib.loads(body.decode()) + except Exception: + print('aoeu') + assert json['error'] is None + assert 'torrent_filehash' == json['result']['name'] |