From 8954f1a494e7fcdf551b83c4101949e6b302fc1c Mon Sep 17 00:00:00 2001 From: Peter Kessen Date: Wed, 27 Jan 2016 19:42:53 +0100 Subject: [PATCH 1/4] split of modify function in modify_test --- test/test_ui.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/test/test_ui.py b/test/test_ui.py index 609c21c00..58eecee46 100644 --- a/test/test_ui.py +++ b/test/test_ui.py @@ -158,10 +158,13 @@ class ModifyTest(unittest.TestCase, TestHelper): def tearDown(self): self.teardown_beets() - def modify(self, *args): - with control_stdin('y'): + def modify_inp(self, inp, *args): + with control_stdin(inp): ui._raw_main(['modify'] + list(args), self.lib) + def modify(self, *args): + self.modify_inp('y', *args) + # Item tests def test_modify_item(self): From e0ffae3be055ab71236d30f9893c2d0dc1f75cae Mon Sep 17 00:00:00 2001 From: Peter Kessen Date: Wed, 27 Jan 2016 19:43:31 +0100 Subject: [PATCH 2/4] added test case for Modify without any change --- test/test_ui.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/test/test_ui.py b/test/test_ui.py index 58eecee46..07d292bbe 100644 --- a/test/test_ui.py +++ b/test/test_ui.py @@ -172,6 +172,13 @@ class ModifyTest(unittest.TestCase, TestHelper): item = self.lib.items().get() self.assertEqual(item.title, 'newTitle') + def test_modify_item_no_change(self): + title = "Tracktitle" + item = self.add_item_fixture(title=title) + self.modify_inp('y', "title", "title={0}".format(title)) + item = self.lib.items(title).get() + self.assertEqual(item.title, title) + def test_modify_write_tags(self): self.modify("title=newTitle") item = self.lib.items().get() From a707715b81a7db8be82264f5cb1ba4ce0e193895 Mon Sep 17 00:00:00 2001 From: Peter Kessen Date: Wed, 27 Jan 2016 19:51:22 +0100 Subject: [PATCH 3/4] added testcase with no write and no move improves coverage --- test/test_ui.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/test/test_ui.py b/test/test_ui.py index 07d292bbe..9b31c02b9 100644 --- a/test/test_ui.py +++ b/test/test_ui.py @@ -201,6 +201,13 @@ class ModifyTest(unittest.TestCase, TestHelper): item = self.lib.items().get() self.assertNotIn(b'newTitle', item.path) + def test_no_write_no_move(self): + self.modify("--nomove", "--nowrite", "title=newTitle") + item = self.lib.items().get() + item.read() + self.assertNotIn(b'newTitle', item.path) + self.assertNotEqual(item.title, 'newTitle') + def test_update_mtime(self): item = self.item old_mtime = item.mtime From 7b2de49274dfe2b287a29fa6149e727da83ba04c Mon Sep 17 00:00:00 2001 From: Peter Kessen Date: Wed, 27 Jan 2016 19:55:23 +0100 Subject: [PATCH 4/4] added test for abort of modify action --- test/test_ui.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/test/test_ui.py b/test/test_ui.py index 9b31c02b9..4a10a7947 100644 --- a/test/test_ui.py +++ b/test/test_ui.py @@ -172,6 +172,13 @@ class ModifyTest(unittest.TestCase, TestHelper): item = self.lib.items().get() self.assertEqual(item.title, 'newTitle') + def test_modify_item_abort(self): + item = self.lib.items().get() + title = item.title + self.modify_inp('n', "title=newTitle") + item = self.lib.items().get() + self.assertEqual(item.title, title) + def test_modify_item_no_change(self): title = "Tracktitle" item = self.add_item_fixture(title=title)