Python/graphs/tests/test_graphs_floyd_warshall.py
Ajmera, Mahita SI/HZR-IDSA 8be7753175 changing pytest
2024-10-17 11:26:52 +02:00

41 lines
1.0 KiB
Python

import pytest
from graphs.graphs_floyd_warshall import floyd_warshall
def test_no_edges():
graph = [
[0, float("inf"), float("inf")],
[float("inf"), 0, float("inf")],
[float("inf"), float("inf"), 0],
]
expected = [
[0, float("inf"), float("inf")],
[float("inf"), 0, float("inf")],
[float("inf"), float("inf"), 0],
]
dist, _ = floyd_warshall(graph, 3)
assert dist == expected
def test_with_edges():
graph = [[0, 3, float("inf")], [2, 0, float("inf")], [float("inf"), 7, 0]]
expected = [[0, 3, float("inf")], [2, 0, float("inf")], [9, 7, 0]]
dist, _ = floyd_warshall(graph, 3)
assert dist == expected
def test_unreachable_vertices():
graph = [
[0, 1, float("inf")],
[float("inf"), 0, 2],
[float("inf"), float("inf"), 0],
]
expected = [[0, 1, 3], [float("inf"), 0, 2], [float("inf"), float("inf"), 0]]
dist, _ = floyd_warshall(graph, 3)
assert dist == expected
if __name__ == "__main__":
pytest.main()