Skip to content

Commit 73478b9

Browse files
committed
support empty groups
1 parent 48636f4 commit 73478b9

File tree

3 files changed

+23
-2
lines changed

3 files changed

+23
-2
lines changed

pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "znflow"
3-
version = "0.2.1"
3+
version = "0.2.2"
44
description = "A general purpose framework for building and running computational graphs."
55
authors = ["zincwarecode <[email protected]>"]
66
license = "Apache-2.0"

tests/test_graph_group.py

+21
Original file line numberDiff line numberDiff line change
@@ -276,3 +276,24 @@ def test_grp_nodes():
276276
assert grp.nodes == [n1, n2]
277277
assert grp.uuids == [n1.uuid, n2.uuid]
278278
assert grp.names == ("grp1",)
279+
280+
281+
def test_empty_grps():
282+
graph = znflow.DiGraph()
283+
284+
with graph.group("grp1") as grp1:
285+
pass
286+
with graph.group("grp2") as grp2:
287+
pass
288+
289+
assert len(grp1) == 0
290+
assert len(grp2) == 0
291+
assert grp1.uuids == []
292+
assert grp2.uuids == []
293+
294+
assert grp1.names == ("grp1",)
295+
assert grp2.names == ("grp2",)
296+
297+
assert len(graph.groups) == 2
298+
assert grp1.names in graph.groups
299+
assert grp2.names in graph.groups

znflow/graph.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -247,9 +247,9 @@ def group(self, *names: str) -> typing.Generator[Group, None, None]:
247247
group = self.groups.get(names, Group(names=names, uuids=[], graph=self))
248248

249249
def finalize_group():
250+
self.groups[group.names] = group
250251
for node_uuid in self.nodes:
251252
if node_uuid not in existing_nodes:
252-
self.groups[group.names] = group
253253
group.uuids.append(node_uuid)
254254

255255
try:

0 commit comments

Comments
 (0)