import math
from django.test import TestCase
from OSM_outils.OSMnx_recuperation_graph_information import OSMnx_recuperation_graph_information
import osmnx as ox

class OSMnx_recuperation_graph_informationTestCase(TestCase):
    """
    Le but de cette classe de test est de vérifier les informations renvoyées depuis la méthode
    recuperation_information_graphe.

    """
    def setUp(self) -> None:
        G = OSMnx_recuperation_graph_information.lire_graphe("exemple")
        oSMnx_recuperation_graph_information = OSMnx_recuperation_graph_information(G)
        self.resultat = oSMnx_recuperation_graph_information.recuperation_information_graphe(G, "./Data/exemple.graphml")

    def test_intersection_count(self):
        """
        Cette méthode test la valeur calculé pour le nombre d'intersections

        """
        self.assertEqual(self.resultat['gvvi_nb_intersection'], 2)

    def test_get_diametre(self):
        """
        Cette méthode test la valeur retourné par la méthode get_diametre
        """
        self.assertEqual(self.resultat['gvvi_diametre'], 1)

    def test_get_degre_moyen(self):
        """
        Cette méthode permet de tester la valeur retournée par la méthode get_degre_moyen.
        """
        self.assertEqual(self.resultat['gvvi_degre_moyen'], 1)
