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)