`|=` does not work as expected on TOMLDocument
5j9 opened this issue · 0 comments
5j9 commented
I was expecting |=
operator to work the same as .update
method, because that's how Python dicts work, but |=
on a TOMLDocument seems to have no effect:
from tomlkit import TOMLDocument
d1 = TOMLDocument()
d1['a'] = {'b': 'c'}
d2 = TOMLDocument()
d2['a'] = {'b': 'Z'}
d1['a'] |= d2['a'] # expected to be the same as d1['a'].update(d2['a']), but it's not
assert d1 == {'a': {'b': 'Z'}}, d1 # AssertionError: {'a': {'b': 'c'}}
Same code using a Python dict:
d1 = {'a': {'b': 'c'}}
d2 = {'a': {'b': 'Z'}}
d1['a'] |= d2['a']
assert d1 == {'a': {'b': 'Z'}} # no error