Skip to content

Commit 9e2bce7

Browse files
committed
add tests form pydata#9494 but at NamedNode level
1 parent f1b2b31 commit 9e2bce7

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

xarray/tests/test_treenode.py

+22
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,28 @@ def test_node_names(self):
286286
with pytest.raises(TypeError, match="must be a string or None"):
287287
NamedNode(name=0)
288288

289+
def test_names(self):
290+
nn = NamedNode()
291+
assert nn.name is None
292+
293+
nn = NamedNode(name="foo")
294+
assert nn.name == "foo"
295+
296+
nn.name = "bar"
297+
assert nn.name == "bar"
298+
299+
nn = NamedNode(children={"foo": NamedNode()})
300+
assert nn.children["foo"].name == "foo"
301+
with pytest.raises(
302+
ValueError, match="cannot set the name of a node which already has a parent"
303+
):
304+
nn.children["foo"].name = "bar"
305+
306+
detached = nn.children["foo"].copy()
307+
assert detached.name == "foo"
308+
detached.name = "bar"
309+
assert detached.name == "bar"
310+
289311

290312
def create_test_tree() -> tuple[NamedNode, NamedNode]:
291313
# a

0 commit comments

Comments
 (0)