stream: Update library tests to include backend

This commit is contained in:
Thomas Adamcik 2016-02-14 23:49:05 +01:00
parent 9296ddd75b
commit a6495e0ecd

View File

@ -4,7 +4,6 @@ import mock
import pytest import pytest
from mopidy.audio import scan
from mopidy.internal import path from mopidy.internal import path
from mopidy.models import Track from mopidy.models import Track
from mopidy.stream import actor from mopidy.stream import actor
@ -13,16 +12,23 @@ from tests import path_to_data_dir
@pytest.fixture @pytest.fixture
def scanner(): def config():
return scan.Scanner(timeout=100, proxy_config={}) return {
'proxy': {},
'stream': {
'timeout': 1000,
'metadata_blacklist': [],
'protocols': ['file'],
},
'file': {
'enabled': False
},
}
@pytest.fixture @pytest.fixture
def backend(scanner): def audio():
backend = mock.Mock() return mock.Mock()
backend.uri_schemes = ['file']
backend._scanner = scanner
return backend
@pytest.fixture @pytest.fixture
@ -30,26 +36,28 @@ def track_uri():
return path.path_to_uri(path_to_data_dir('song1.wav')) return path.path_to_uri(path_to_data_dir('song1.wav'))
def test_lookup_ignores_unknown_scheme(backend): def test_lookup_ignores_unknown_scheme(audio, config):
library = actor.StreamLibraryProvider(backend, []) backend = actor.StreamBackend(audio=audio, config=config)
backend.library.lookup('http://example.com') == []
assert library.lookup('http://example.com') == []
def test_lookup_respects_blacklist(backend, track_uri): def test_lookup_respects_blacklist(audio, config, track_uri):
library = actor.StreamLibraryProvider(backend, [track_uri]) config['stream']['metadata_blacklist'].append(track_uri)
backend = actor.StreamBackend(audio=audio, config=config)
assert library.lookup(track_uri) == [Track(uri=track_uri)] assert backend.library.lookup(track_uri) == [Track(uri=track_uri)]
def test_lookup_respects_blacklist_globbing(backend, track_uri): def test_lookup_respects_blacklist_globbing(audio, config, track_uri):
blacklist = [path.path_to_uri(path_to_data_dir('')) + '*'] blacklist_glob = path.path_to_uri(path_to_data_dir('')) + '*'
library = actor.StreamLibraryProvider(backend, blacklist) config['stream']['metadata_blacklist'].append(blacklist_glob)
backend = actor.StreamBackend(audio=audio, config=config)
assert library.lookup(track_uri) == [Track(uri=track_uri)] assert backend.library.lookup(track_uri) == [Track(uri=track_uri)]
def test_lookup_converts_uri_metadata_to_track(backend, track_uri): def test_lookup_converts_uri_metadata_to_track(audio, config, track_uri):
library = actor.StreamLibraryProvider(backend, []) backend = actor.StreamBackend(audio=audio, config=config)
assert library.lookup(track_uri) == [Track(length=4406, uri=track_uri)] result = backend.library.lookup(track_uri)
assert result == [Track(length=4406, uri=track_uri)]