Use index to get KeyError message instead of unicode() as its behaviour varies between Solaris/Py2.6.5 and Ubuntu/Py2.6.4

This commit is contained in:
Stein Magnus Jodal 2010-03-29 20:56:29 +02:00
parent 61dadc02b6
commit bcd9fd66e8
2 changed files with 7 additions and 7 deletions

View File

@ -303,7 +303,7 @@ class MpdFrontend(object):
track = self.backend.current_playlist.get_by_id(songid)
return self.backend.current_playlist.remove(track)
except KeyError as e:
raise MpdAckError(unicode(e))
raise MpdAckError(e[0])
@handle_pattern(r'^clear$')
def _current_playlist_clear(self):
@ -410,7 +410,7 @@ class MpdFrontend(object):
track = self.backend.current_playlist.get_by_id(songid)
return track.mpd_format()
except KeyError as e:
raise MpdAckError(unicode(e))
raise MpdAckError(e[0])
else:
return self.backend.current_playlist.playlist.mpd_format()
@ -823,7 +823,7 @@ class MpdFrontend(object):
track = self.backend.current_playlist.get_by_id(songid)
return self.backend.playback.play(track)
except KeyError as e:
raise MpdAckError(unicode(e))
raise MpdAckError(e[0])
@handle_pattern(r'^play "(?P<songpos>\d+)"$')
def _playback_playpos(self, songpos):
@ -1333,7 +1333,7 @@ class MpdFrontend(object):
return ['file: %s' % t.uri
for t in self.backend.stored_playlists.get_by_name(name).tracks]
except KeyError as e:
raise MpdAckError(unicode(e))
raise MpdAckError(e[0])
@handle_pattern(r'^listplaylistinfo "(?P<name>[^"]+)"$')
def _stored_playlists_listplaylistinfo(self, name):
@ -1353,7 +1353,7 @@ class MpdFrontend(object):
return self.backend.stored_playlists.get_by_name(name).mpd_format(
search_result=True)
except KeyError as e:
raise MpdAckError(unicode(e))
raise MpdAckError(e[0])
@handle_pattern(r'^listplaylists$')
def _stored_playlists_listplaylists(self):

View File

@ -6,9 +6,9 @@ class MpdExceptionsTest(unittest.TestCase):
def test_key_error_wrapped_in_mpd_ack_error(self):
try:
try:
raise KeyError('Track X not found')
raise KeyError(u'Track X not found')
except KeyError as e:
raise MpdAckError(unicode(e))
raise MpdAckError(e[0])
except MpdAckError as e:
self.assertEqual(e.message, u'Track X not found')