core: Mark tracklist.add by URI as deprecated

This commit is contained in:
Thomas Adamcik 2015-03-27 20:50:15 +01:00
parent 49fc9941a1
commit d3b275e1a4
3 changed files with 12 additions and 3 deletions

View File

@ -3,6 +3,7 @@ from __future__ import absolute_import, unicode_literals
import collections
import logging
import random
import warnings
from mopidy import compat
from mopidy.core import listener
@ -332,6 +333,10 @@ class TracklistController(object):
assert tracks is not None or uri is not None or uris is not None, \
'tracks, uri or uris must be provided'
if uri:
warnings.warn('tracklist.add() "uri" argument is deprecated.',
DeprecationWarning)
if tracks is None:
if uri is not None:
uris = [uri]

View File

@ -22,7 +22,7 @@ def add(context, uri):
if not uri.strip('/'):
return
if context.core.tracklist.add(uri=uri).get():
if context.core.tracklist.add(uris=[uri]).get():
return
try:
@ -63,7 +63,8 @@ def addid(context, uri, songpos=None):
raise exceptions.MpdNoExistError('No such song')
if songpos is not None and songpos > context.core.tracklist.length.get():
raise exceptions.MpdArgError('Bad song index')
tl_tracks = context.core.tracklist.add(uri=uri, at_position=songpos).get()
tl_tracks = context.core.tracklist.add(
uris=[uri], at_position=songpos).get()
if not tl_tracks:
raise exceptions.MpdNoExistError('No such song')
return ('Id', tl_tracks[0].tlid)

View File

@ -1,6 +1,7 @@
from __future__ import absolute_import, unicode_literals
import unittest
import warnings
import mock
@ -28,7 +29,9 @@ class TracklistTest(unittest.TestCase):
track = Track(uri='dummy1:x', name='x')
self.library.lookup.return_value.get.return_value = [track]
tl_tracks = self.core.tracklist.add(uri='dummy1:x')
with warnings.catch_warnings():
warnings.filterwarnings('ignore', r'tracklist.add.*"uri".*')
tl_tracks = self.core.tracklist.add(uri='dummy1:x')
self.library.lookup.assert_called_once_with('dummy1:x')
self.assertEqual(1, len(tl_tracks))