trying out a multi-line track display (#78)

This commit is contained in:
Adrian Sampson 2013-01-30 19:23:53 -08:00
parent ea2e263834
commit 486dd210ae
2 changed files with 8 additions and 11 deletions

View file

@ -181,7 +181,6 @@ def show_change(cur_artist, cur_album, match):
# Tracks.
pairs = match.mapping.items()
pairs.sort(key=lambda (_, track_info): track_info.index)
max_title_len = max([len(item.title) for item, track_info in pairs])
for item, track_info in pairs:
# Get displayable LHS and RHS values.
cur_track = unicode(item.track)
@ -206,14 +205,13 @@ def show_change(cur_artist, cur_album, match):
cur_title = displayable_path(os.path.basename(item.path))
if cur_title != new_title:
pad = ' ' * (max_title_len - len(item.title) + 1)
lhs, rhs = cur_title + pad, new_title
lhs, rhs = cur_title, new_title
if tracks_differ:
lhs += u' (%s)' % cur_track
rhs += u' (%s)' % new_track
print_(u" * %s -> %s" % (lhs, rhs))
print_(u" * %s ->\n %s" % (lhs, rhs))
else:
line = u' * %s' % item.title.ljust(max_title_len + 1)
line = u' * %s' % item.title
display = False
if tracks_differ:
display = True

View file

@ -20,7 +20,6 @@ import textwrap
import logging
import re
import yaml
from StringIO import StringIO
import _common
from _common import unittest
@ -688,12 +687,12 @@ class ShowChangeTest(_common.TestCase):
def test_item_data_change(self):
self.items[0].title = 'different'
msg = self._show_change()
self.assertTrue('different -> the title' in msg)
self.assertTrue('different ->\n the title' in msg)
def test_item_data_change_with_unicode(self):
self.items[0].title = u'caf\xe9'
msg = self._show_change()
self.assertTrue(u'caf\xe9 -> the title' in msg.decode('utf8'))
self.assertTrue(u'caf\xe9 ->\n the title' in msg.decode('utf8'))
def test_album_data_change_with_unicode(self):
msg = self._show_change(cur_artist=u'caf\xe9',
@ -703,14 +702,14 @@ class ShowChangeTest(_common.TestCase):
def test_item_data_change_title_missing(self):
self.items[0].title = ''
msg = self._show_change()
self.assertTrue('file.mp3 -> the title' in msg)
self.assertTrue('file.mp3 ->\n the title' in msg)
def test_item_data_change_title_missing_with_unicode_filename(self):
self.items[0].title = ''
self.items[0].path = u'/path/to/caf\xe9.mp3'.encode('utf8')
msg = self._show_change().decode('utf8')
self.assertTrue(u'caf\xe9.mp3 -> the title' in msg
or u'caf.mp3 ->' in msg)
self.assertTrue(u'caf\xe9.mp3 ->' in msg
or u'caf.mp3 ->' in msg)
class PathFormatTest(_common.TestCase):
def test_custom_paths_prepend(self):