Skip to content

Commit f5b1cdc

Browse files
authored
fix: don't add header when removing items from a supertable (#219)
1 parent ad7dfe0 commit f5b1cdc

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

tests/test_toml_document.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -983,3 +983,21 @@ def test_add_newline_before_super_table():
983983
[d.e]
984984
"""
985985
assert doc.as_string() == dedent(expected)
986+
987+
988+
def test_remove_item_from_super_table():
989+
content = """\
990+
[hello.one]
991+
a = 1
992+
993+
[hello.two]
994+
b = 1
995+
"""
996+
doc = parse(dedent(content))
997+
del doc["hello"]["two"]
998+
expected = """\
999+
[hello.one]
1000+
a = 1
1001+
1002+
"""
1003+
assert doc.as_string() == dedent(expected)

tomlkit/container.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -525,7 +525,8 @@ def _render_table(
525525

526526
if not table.is_super_table() or (
527527
any(
528-
not isinstance(v, (Table, AoT, Whitespace)) for _, v in table.value.body
528+
not isinstance(v, (Table, AoT, Whitespace, Null))
529+
for _, v in table.value.body
529530
)
530531
and not key.is_dotted()
531532
):

0 commit comments

Comments
 (0)