diff options
| author | 2022-08-29 02:17:22 -0400 | |
|---|---|---|
| committer | 2022-08-29 02:17:22 -0400 | |
| commit | ba3ac631ac4e8820d3d701980782ab4a03c1276b (patch) | |
| tree | 06eecd8b697bf84e96d8347453bb66ba8689fc8b /test/test_postprocessor.py | |
| parent | 011fcf09a56e256bc5d78bcbc629e6f6f76b053d (diff) | |
| parent | a768930761f7f20587ae40a8cacca0e55c85290a (diff) | |
Update upstream source from tag 'upstream/1.23.0'
Update to upstream version '1.23.0'
with Debian dir 8809d3b22d175263b51492e17e8298cdd52f7af1
Diffstat (limited to 'test/test_postprocessor.py')
| -rw-r--r-- | test/test_postprocessor.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/test/test_postprocessor.py b/test/test_postprocessor.py index 7a216bb..42babd3 100644 --- a/test/test_postprocessor.py +++ b/test/test_postprocessor.py @@ -339,6 +339,52 @@ class MetadataTest(BasePostprocessorTest): {"category": "test", "extension": "ext", "filename": "file"} """) + def test_metadata_modify(self): + kwdict = {"foo": 0, "bar": {"bax": 1, "bay": 2, "baz": 3}} + self._create({ + "mode": "modify", + "fields": { + "foo" : "{filename}-{foo!s}", + "foo2" : "\fE bar['bax'] + 122", + "bar[baz]": "{_now}", + "bar[ba2]": "test", + }, + }, kwdict) + pdict = self.pathfmt.kwdict + + self.assertIsNot(kwdict, pdict) + self.assertEqual(pdict["foo"], kwdict["foo"]) + self.assertEqual(pdict["bar"], kwdict["bar"]) + + self._trigger() + + self.assertEqual(pdict["foo"] , "file-0") + self.assertEqual(pdict["foo2"] , 123) + self.assertEqual(pdict["bar"]["ba2"], "test") + self.assertIsInstance(pdict["bar"]["baz"], datetime) + + def test_metadata_delete(self): + kwdict = {"foo": 0, "bar": {"bax": 1, "bay": 2, "baz": 3}} + self._create({"mode": "delete", "fields": ["foo", "bar[baz]"]}, kwdict) + pdict = self.pathfmt.kwdict + + self.assertIsNot(kwdict, pdict) + self.assertEqual(pdict["foo"], kwdict["foo"]) + self.assertEqual(pdict["bar"], kwdict["bar"]) + + del kwdict["foo"] + del kwdict["bar"]["baz"] + + self._trigger() + self.assertNotIn("foo", pdict) + self.assertNotIn("baz", pdict["bar"]) + self.assertEqual(kwdict["bar"], pdict["bar"]) + + self._trigger() + self.assertNotIn("foo", pdict) + self.assertNotIn("baz", pdict["bar"]) + self.assertEqual(kwdict["bar"], pdict["bar"]) + @staticmethod def _output(mock): return "".join( |
