aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_postprocessor.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_postprocessor.py')
-rw-r--r--test/test_postprocessor.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/test/test_postprocessor.py b/test/test_postprocessor.py
index 650bf59..c78d7b0 100644
--- a/test/test_postprocessor.py
+++ b/test/test_postprocessor.py
@@ -428,11 +428,46 @@ class MetadataTest(BasePostprocessorTest):
self.assertNotIn("baz", pdict["bar"])
self.assertEqual(kwdict["bar"], pdict["bar"])
+ # no errors for deleted/undefined fields
self._trigger()
self.assertNotIn("foo", pdict)
self.assertNotIn("baz", pdict["bar"])
self.assertEqual(kwdict["bar"], pdict["bar"])
+ def test_metadata_option_skip(self):
+ self._create({"skip": True})
+
+ with patch("builtins.open", mock_open()) as m, \
+ patch("os.path.exists") as e:
+ e.return_value = True
+ self._trigger()
+
+ self.assertTrue(e.called)
+ self.assertTrue(not m.called)
+ self.assertTrue(not len(self._output(m)))
+
+ with patch("builtins.open", mock_open()) as m, \
+ patch("os.path.exists") as e:
+ e.return_value = False
+ self._trigger()
+
+ self.assertTrue(e.called)
+ self.assertTrue(m.called)
+ self.assertGreater(len(self._output(m)), 0)
+
+ path = self.pathfmt.realdirectory + "file.ext.json"
+ m.assert_called_once_with(path, "w", encoding="utf-8")
+
+ def test_metadata_option_skip_false(self):
+ self._create({"skip": False})
+
+ with patch("builtins.open", mock_open()) as m, \
+ patch("os.path.exists") as e:
+ self._trigger()
+
+ self.assertTrue(not e.called)
+ self.assertTrue(m.called)
+
@staticmethod
def _output(mock):
return "".join(