def test_bipartite_with_probility_V1_2V2_2P3(self): bException = False try: self.bipartite_Probability = generators.bipartite_with_probability(1, 1, 0.5) except ValueError: bException = True self.assertTrue(self.bipartite_Probability is not None and bException is False)
def test_bipartite_with_probility_V1_1V2_1P1(self): bException = False try: self.bipartite_Probability = generators.bipartite_with_probability(-1, -1, -1.0) except ValueError: bException = True self.assertTrue(self.bipartite_Probability is None and bException is True)
def test_bipartite_with_probility_P_is_between_zero_and_one(self): exceptionWasRaised = False bipartiteGraph = None try: bipartiteGraph = bipartite_with_probability(4, 4, 0.8) except: exceptionWasRaised = True self.assertFalse(exceptionWasRaised and bipartiteGraph is None)
def test_bipartite_with_probility_P_is_greater_than_one(self): exceptionWasRaised = False bipartiteGraph = None try: bipartiteGraph = bipartite_with_probability(4, 4, 1.5) except: exceptionWasRaised = True self.assertTrue(exceptionWasRaised and bipartiteGraph is None)
def test_bipartite_with_probility_P_is_smaller_than_zero(self): exceptionWasRaised = False bipartiteGraph = None try: bipartiteGraph = bipartite_with_probability(4, 4, -1.0) except: exceptionWasRaised = True self.assertTrue(exceptionWasRaised and bipartiteGraph is None)
def test_bipartite_with_probility_V2_is_less_than_zero(self): exceptionWasRaised = False bipartiteGraph = None try: bipartiteGraph = bipartite_with_probability(4, -1, 0.8) except: exceptionWasRaised = True self.assertTrue(exceptionWasRaised and bipartiteGraph is None)
def test_bipartite_with_probility_V2_equals_zero(self): exceptionWasRaised = False bipartiteGraph = None try: bipartiteGraph = bipartite_with_probability(4, 0, 0.8) except: exceptionWasRaised = True self.assertFalse(exceptionWasRaised and bipartiteGraph is not None)
def test_bipartite_with_probility_V1_smaller_than_zero(self): exceptionWasRaised = False try: self.bipartiteGraphWithProbility = bipartite_with_probability( -1.0, 4, 0.8) except: exceptionWasRaised = True self.assertTrue(exceptionWasRaised and self.bipartiteGraphWithProbility is None)
def test_bipartite_with_probility_P_between_one_and_zero(self): exceptionWasRaised = False try: self.bipartiteGraphWithProbility = bipartite_with_probability( 4, 4, 0.8) except: exceptionWasRaised = True self.assertFalse(exceptionWasRaised and self.bipartiteGraphWithProbility is not None)
def test_bipartite_with_probability(self): for v1 in range(4, 6): for v2 in range(4, 6): for probability in [0.2, 0.5, 0.8, 1]: graph = generators.bipartite_with_probability( v1, v2, probability) self.assertEqual(graph.V(), v1 + v2) # verifier V #on verifie le nombre d'arrete a l'aide de la probabilite self.assertAlmostEqual(graph.E(), sum_bernoulli(v1 * v2, probability)) #on va essayer d'extraire les noeuds en 2 sous-graphes bipartites vertices1 = [] vertices2 = [] edges = graph.edges() firstSet = list(edges[0]) vertices1.append(firstSet[0]) vertices2.append(firstSet[1]) for edge in edges: asList = list(edge) if (vertices1.count(asList[0]) > 0): #on s'assure les noeuds de l'arrete ne se trouvent pas dans le meme sous-ensemble self.assertEqual(vertices1.count(asList[1]), 0) if (vertices2.count(asList[1]) == 0): vertices2.append(asList[1]) elif (vertices2.count(asList[0]) > 0): #on s'assure les noeuds de l'arrete ne se trouvent pas dans le meme sous-ensemble self.assertEqual(vertices2.count(asList[1]), 0) if (vertices1.count(asList[1]) == 0): vertices1.append(asList[1])