Loading poetry/toml/cascadedict.py +4 −0 Changes for poetry/toml/cascadedict.py: 4 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -32,6 +32,10 @@ class CascadeDict: raise KeyError def __setitem__(self, key, value): for d in self._internal_dicts[1:]: if key in d: d[key] = value self._internal_dicts[0][key] = value def get(self, item, default=None): Loading tests/toml/test_toml.py +25 −0 Changes for tests/toml/test_toml.py: 25 added lines, 0 removed lines. Original line number Diff line number Diff line from poetry.toml import dumps from poetry.toml import loads from poetry.toml.prettify.errors import TOMLError Loading Loading @@ -262,3 +263,27 @@ last_name = "Springsteen" def non_empty(iterable): return tuple(filter(bool, iterable)) def test_set_elements(): t = """\ [tool.poetry] name = "poetry" version = "0.1.0" [tool.poetry.dependencies] python = "^3.6" """ parsed = loads(t) content = parsed['tool']['poetry'] assert content['name'] == 'poetry' assert content['version'] == '0.1.0' content['version'] = '0.2.0' t = dumps(parsed) parsed = loads(t) content = parsed['tool']['poetry'] assert content['name'] == 'poetry' assert content['version'] == '0.2.0' Loading
poetry/toml/cascadedict.py +4 −0 Changes for poetry/toml/cascadedict.py: 4 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -32,6 +32,10 @@ class CascadeDict: raise KeyError def __setitem__(self, key, value): for d in self._internal_dicts[1:]: if key in d: d[key] = value self._internal_dicts[0][key] = value def get(self, item, default=None): Loading
tests/toml/test_toml.py +25 −0 Changes for tests/toml/test_toml.py: 25 added lines, 0 removed lines. Original line number Diff line number Diff line from poetry.toml import dumps from poetry.toml import loads from poetry.toml.prettify.errors import TOMLError Loading Loading @@ -262,3 +263,27 @@ last_name = "Springsteen" def non_empty(iterable): return tuple(filter(bool, iterable)) def test_set_elements(): t = """\ [tool.poetry] name = "poetry" version = "0.1.0" [tool.poetry.dependencies] python = "^3.6" """ parsed = loads(t) content = parsed['tool']['poetry'] assert content['name'] == 'poetry' assert content['version'] == '0.1.0' content['version'] = '0.2.0' t = dumps(parsed) parsed = loads(t) content = parsed['tool']['poetry'] assert content['name'] == 'poetry' assert content['version'] == '0.2.0'