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 collections
import logging import logging
import random import random
import warnings
from mopidy import compat from mopidy import compat
from mopidy.core import listener 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, \ assert tracks is not None or uri is not None or uris is not None, \
'tracks, uri or uris must be provided' 'tracks, uri or uris must be provided'
if uri:
warnings.warn('tracklist.add() "uri" argument is deprecated.',
DeprecationWarning)
if tracks is None: if tracks is None:
if uri is not None: if uri is not None:
uris = [uri] uris = [uri]

View File

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

View File

@ -1,6 +1,7 @@
from __future__ import absolute_import, unicode_literals from __future__ import absolute_import, unicode_literals
import unittest import unittest
import warnings
import mock import mock
@ -28,7 +29,9 @@ class TracklistTest(unittest.TestCase):
track = Track(uri='dummy1:x', name='x') track = Track(uri='dummy1:x', name='x')
self.library.lookup.return_value.get.return_value = [track] 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.library.lookup.assert_called_once_with('dummy1:x')
self.assertEqual(1, len(tl_tracks)) self.assertEqual(1, len(tl_tracks))