Resolving artifacts in holy aboba test
This commit is contained in:
+13
-13
@@ -115,8 +115,6 @@ def run(argv: Optional[list[str]] = None):
|
|||||||
startup_millis = time() - startup_millis
|
startup_millis = time() - startup_millis
|
||||||
debug(f"* Tasks successfully completed in {startup_millis:.2f}s!")
|
debug(f"* Tasks successfully completed in {startup_millis:.2f}s!")
|
||||||
|
|
||||||
from random import random
|
|
||||||
|
|
||||||
from .language import AbobaConfig
|
from .language import AbobaConfig
|
||||||
|
|
||||||
project_config = AbobaConfig("1")
|
project_config = AbobaConfig("1")
|
||||||
@@ -128,8 +126,7 @@ node3 = graph.obtain_edge(AbobaConfig("3"))
|
|||||||
graph.depend_on(node2, node3)
|
graph.depend_on(node2, node3)
|
||||||
node4 = graph.obtain_edge(AbobaConfig("4"))
|
node4 = graph.obtain_edge(AbobaConfig("4"))
|
||||||
graph.depend_on(node3, node4)
|
graph.depend_on(node3, node4)
|
||||||
if random() < 0.5:
|
graph.depend_on(node4, node2)
|
||||||
graph.depend_on(node4, node2)
|
|
||||||
node5 = graph.obtain_edge(AbobaConfig("5"))
|
node5 = graph.obtain_edge(AbobaConfig("5"))
|
||||||
graph.depend_on(node1, node5)
|
graph.depend_on(node1, node5)
|
||||||
node6 = graph.obtain_edge(AbobaConfig("6"))
|
node6 = graph.obtain_edge(AbobaConfig("6"))
|
||||||
@@ -142,15 +139,18 @@ graph.depend_on(node1, node8)
|
|||||||
graph.depend_on(node6, node8)
|
graph.depend_on(node6, node8)
|
||||||
|
|
||||||
print("Cross references")
|
print("Cross references")
|
||||||
print(f"Node 1: {graph.get_cross_references(node1)}")
|
print(f"Node 1: {graph.find_circular_reference(node1)}")
|
||||||
print(f"Node 2: {graph.get_cross_references(node2)}")
|
print(f"Node 2: {graph.find_circular_reference(node2)}")
|
||||||
print(f"Node 3: {graph.get_cross_references(node3)}")
|
print(f"Node 3: {graph.find_circular_reference(node3)}")
|
||||||
print(f"Node 4: {graph.get_cross_references(node4)}")
|
print(f"Node 4: {graph.find_circular_reference(node4)}")
|
||||||
print(f"Node 5: {graph.get_cross_references(node5)}")
|
print(f"Node 5: {graph.find_circular_reference(node5)}")
|
||||||
print(f"Node 6: {graph.get_cross_references(node6)}")
|
print(f"Node 6: {graph.find_circular_reference(node6)}")
|
||||||
print(f"Node 7: {graph.get_cross_references(node7)}")
|
print(f"Node 7: {graph.find_circular_reference(node7)}")
|
||||||
print(f"Node 8: {graph.get_cross_references(node8)}")
|
print(f"Node 8: {graph.find_circular_reference(node8)}")
|
||||||
print(f"Looped by cross references? {'No' if not graph.get_cross_references() else 'Yes'}")
|
print(f"Looped by cross references? {'No' if not graph.find_circular_reference() else 'Yes'}")
|
||||||
|
unresolved_artifacts = graph.resolve_dependencies()
|
||||||
|
show_unresolved_dependencies(unresolved_artifacts)
|
||||||
|
resolve_circular_references(graph)
|
||||||
print(f"Order: {', '.join([edge.project.key if isinstance(edge.project, AbobaConfig) else str(edge) for edge in graph.traverse_dependencies()])}")
|
print(f"Order: {', '.join([edge.project.key if isinstance(edge.project, AbobaConfig) else str(edge) for edge in graph.traverse_dependencies()])}")
|
||||||
|
|
||||||
def run_test():
|
def run_test():
|
||||||
|
|||||||
Reference in New Issue
Block a user