From 8b543bad44ab62877e5074f409da9c6c97fa7a20 Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Fri, 18 Dec 2015 00:05:25 +0100 Subject: [PATCH] local: URIs should be unicode Any non-ASCII content is uriencoded anyway. --- mopidy/local/translator.py | 4 ++-- tests/local/test_translator.py | 9 +++++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/mopidy/local/translator.py b/mopidy/local/translator.py index 6fc53f63..16842f59 100644 --- a/mopidy/local/translator.py +++ b/mopidy/local/translator.py @@ -42,11 +42,11 @@ def path_to_local_track_uri(relpath): URI.""" if isinstance(relpath, compat.text_type): relpath = relpath.encode('utf-8') - return b'local:track:%s' % urllib.quote(relpath) + return 'local:track:%s' % urllib.quote(relpath) def path_to_local_directory_uri(relpath): """Convert path relative to :confval:`local/media_dir` directory URI.""" if isinstance(relpath, compat.text_type): relpath = relpath.encode('utf-8') - return b'local:directory:%s' % urllib.quote(relpath) + return 'local:directory:%s' % urllib.quote(relpath) diff --git a/tests/local/test_translator.py b/tests/local/test_translator.py index e28de173..7839cd58 100644 --- a/tests/local/test_translator.py +++ b/tests/local/test_translator.py @@ -4,6 +4,7 @@ from __future__ import unicode_literals import pytest +from mopidy import compat from mopidy.local import translator @@ -89,7 +90,9 @@ def test_path_to_file_uri(path, uri): (b'\x00\x01\x02', 'local:track:%00%01%02'), ]) def test_path_to_local_track_uri(path, uri): - assert translator.path_to_local_track_uri(path) == uri + result = translator.path_to_local_track_uri(path) + assert isinstance(result, compat.text_type) + assert result == uri @pytest.mark.parametrize('path,uri', [ @@ -99,4 +102,6 @@ def test_path_to_local_track_uri(path, uri): (b'\x00\x01\x02', 'local:directory:%00%01%02'), ]) def test_path_to_local_directory_uri(path, uri): - assert translator.path_to_local_directory_uri(path) == uri + result = translator.path_to_local_directory_uri(path) + assert isinstance(result, compat.text_type) + assert result == uri