feat: add node in graphset when add flux

This commit is contained in:
Bertrand Benjamin 2025-01-05 15:55:50 +01:00
parent 041e459ca0
commit f2ed76c8aa
2 changed files with 27 additions and 6 deletions

View File

@ -1,7 +1,8 @@
from plesna.compute.consume_flux import consume_flux from plesna.compute.consume_flux import consume_flux
from plesna.graph.graph import Graph, Node from plesna.graph.graph import Graph, Node
from plesna.graph.graph_set import GraphSet from plesna.graph.graph_set import EdgeOnSet, GraphSet
from plesna.models.flux import Flux, FluxMetaData from plesna.models.flux import Flux, FluxMetaData
from plesna.models.libs.flux_graph import flux_to_edgeonset
from plesna.storage.repository.repository import Repository from plesna.storage.repository.repository import Repository
@ -50,12 +51,13 @@ class DataPlateform:
raise DataPlateformError("The flux {name} already exists") raise DataPlateformError("The flux {name} already exists")
self._fluxes[name] = flux self._fluxes[name] = flux
self.flux_graphset_feed(name)
return name return name
def flux_graphset_feed(self, flux_name: str): def flux_graphset_feed(self, flux_name: str):
for schema in self._repositories[repository_name].schemas(): flux = self.flux(flux_name)
for table in self._repositories[repository_name].tables(schema): edge = flux_to_edgeonset(flux)
self._graph.add_node(Node(name=table)) self._graphset.append(edge)
@property @property
def fluxes(self) -> list[str]: def fluxes(self) -> list[str]:

View File

@ -135,8 +135,27 @@ def test_content_from_graph(dataplatform: DataPlateform):
} }
assert dataplatform.graphset.node_sets == { assert dataplatform.graphset.node_sets == {
Node(name="test-raw-username", infos={}), frozenset(
Node(name="test-bronze-username", infos={}), {
Node(name="test-bronze-username"),
}
),
frozenset(
{
Node(name="test-bronze-foo"),
}
),
frozenset(
{
Node(name="test-raw-username"),
}
),
frozenset(
{
Node(name="test-raw-username"),
Node(name="test-raw-recovery"),
}
),
} }