From acfc67a20dd4dc21a17e3960b5287574c3550a41 Mon Sep 17 00:00:00 2001 From: s-heppner Date: Sun, 4 May 2025 19:59:43 +0200 Subject: [PATCH] Add test for empty field values In #4, we thought that a completely empty field value causes a non- descriptive error message. This must have been a different error, since I could not reproduce it again. However, to be sure, this adds a unittest with a completely empty field value. Fixes #4 --- test/test_parser.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/test/test_parser.py b/test/test_parser.py index 497b787..26621e5 100644 --- a/test/test_parser.py +++ b/test/test_parser.py @@ -157,6 +157,31 @@ def test_field_with_url_and_brackets(self) -> None: expected = "\\url{https://example.org/query?x=1&y=2}" self.assertEqual(expected, actual) + def test_empty_field_value(self) -> None: + bibtex_string = """@misc{test_entry, + note = , + }""" + entry = BibTeXEntry.from_string(bibtex_string) + actual = entry.fields.get("note") + expected = "" + self.assertEqual(expected, actual) + + bibtex_string = """@misc{test_entry, + note = {}, + }""" + entry = BibTeXEntry.from_string(bibtex_string) + actual = entry.fields.get("note") + expected = "" + self.assertEqual(expected, actual) + + bibtex_string = """@misc{test_entry, + note = {{}}, + }""" + entry = BibTeXEntry.from_string(bibtex_string) + actual = entry.fields.get("note") + expected = "" + self.assertEqual(expected, actual) + class TestSplitEntries(unittest.TestCase): def test_single_entry(self) -> None: