Skip to content

Commit

Permalink
Fix #43: Use Mopidy v1.1 httpclient.
Browse files Browse the repository at this point in the history
  • Loading branch information
tkem committed Sep 9, 2015
1 parent 1d1198c commit 1eac64f
Show file tree
Hide file tree
Showing 5 changed files with 46 additions and 6 deletions.
6 changes: 5 additions & 1 deletion mopidy_internetarchive/backend.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import logging

from mopidy import backend
from mopidy import backend, httpclient

import pykka

Expand All @@ -25,5 +25,9 @@ def __init__(self, config, audio):
retries=config[Extension.ext_name]['retries'],
timeout=config[Extension.ext_name]['timeout']
)
proxy = httpclient.format_proxy(config['proxy'])
self.client.proxies.update({'http': proxy, 'https': proxy})
agent = '%s/%s' % (Extension.dist_name, Extension.version)
self.client.useragent = httpclient.format_user_agent(agent)
self.library = InternetArchiveLibraryProvider(config, self)
self.playback = InternetArchivePlaybackProvider(audio, self)
12 changes: 12 additions & 0 deletions mopidy_internetarchive/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,18 @@ def __init__(self, base_url=BASE_URL, retries=0, timeout=None):
self.timeout = timeout
self.session = requests.Session()

@property
def proxies(self):
return self.session.proxies

@property
def useragent(self):
return self.session.headers.get('User-Agent')

@useragent.setter
def useragent(self, value):
self.session.headers['User-Agent'] = value

def search(self, query, fields=None, sort=None, rows=None, start=None):
response = self._get('/advancedsearch.php', params={
'q': query,
Expand Down
10 changes: 5 additions & 5 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,11 @@ def get_version(filename):
include_package_data=True,
install_requires=[
'setuptools',
'Mopidy >= 0.19',
'Pykka >= 1.1.0',
'requests >= 2.0.0',
'cachetools >= 1.0.0',
'uritools >= 0.11.0'
'Mopidy >= 1.1',
'Pykka >= 1.1',
'requests >= 2.0',
'cachetools >= 1.0',
'uritools >= 1.0'
],
test_suite='nose.collector',
tests_require=[
Expand Down
22 changes: 22 additions & 0 deletions tests/test_client.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
from __future__ import unicode_literals

import unittest

from mopidy_internetarchive.client import InternetArchiveClient


class ClientTest(unittest.TestCase):

def test_useragent(self):
client = InternetArchiveClient()
self.assertIsNotNone(client.useragent)
client.useragent = 'foobar/1.0'
self.assertEqual(client.useragent, 'foobar/1.0')

def test_proxies(self):
client = InternetArchiveClient()
self.assertIsNotNone(client.proxies)
client.proxies['http'] = 'foo.bar:3128'
self.assertEqual(client.proxies['http'], 'foo.bar:3128')
client.proxies['https'] = 'foo.bar:4012'
self.assertEqual(client.proxies['https'], 'foo.bar:4012')
2 changes: 2 additions & 0 deletions tests/test_library.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ class LibraryTest(unittest.TestCase):
'cache_ttl': None,
'retries': 0,
'timeout': None
},
'proxy': {
}
}

Expand Down

0 comments on commit 1eac64f

Please sign in to comment.