Merge branch 'editor' of github.com:sampsyo/beets into editor

This commit is contained in:
Adrian Sampson 2015-11-16 12:28:35 -08:00
commit c679e3f307
2 changed files with 16 additions and 14 deletions

View file

@ -242,5 +242,6 @@ class EditPlugin(plugins.BeetsPlugin):
# Save to the database and possibly write tags.
for ob in objs:
self._log.debug('saving changes to {}', ob)
ob.try_sync(ui.should_write())
if ob._dirty:
self._log.debug('saving changes to {}', ob)
ob.try_sync(ui.should_write())

View file

@ -189,6 +189,19 @@ class EditCommandTest(unittest.TestCase, TestHelper):
self.album.load()
self.assertEqual(self.album.album, u'\u00e4lbum')
def test_single_edit_add_field(self):
"""Edit the yaml file appending an extra field to the first item, then
apply changes."""
# append "foo: bar" to item with id == 1
self.run_mocked_command({'replacements': {u'id: 1':
u'id: 1\nfoo: bar'}},
# Apply changes? y
['y'])
self.assertEqual(self.lib.items('id:1')[0].foo, 'bar')
self.assertCounts(write_call_count=1,
title_starts_with=u't\u00eftle')
def test_a_album_edit_apply(self):
"""Album query (-a), edit album field, apply changes."""
self.run_mocked_command({'replacements': {u'\u00e4lbum':
@ -239,18 +252,6 @@ class EditCommandTest(unittest.TestCase, TestHelper):
self.assertCounts(write_call_count=0,
title_starts_with=u't\u00eftle')
def test_invalid_yaml_extra_field(self):
"""Edit the yaml file incorrectly (resulting in a well-formed but
invalid yaml document), appending an extra field to the first item."""
# append "foo: bar" to item with id == 1
self.run_mocked_command({'replacements': {u'id: 1':
u'id: 1\nfoo: bar'}},
# no stdin
[])
self.assertCounts(write_call_count=0,
title_starts_with=u't\u00eftle')
def suite():
return unittest.TestLoader().loadTestsFromName(__name__)