예제 #1
0
파일: evaluator.py 프로젝트: ayr0/pebl-ayr0
    def randomize_network(self, blacklist=tuple(), whitelist=tuple()): 
        """Randomize the network edges."""

        self.network = network.random_network(self.network.nodes(),
                                                prohibited_edges=blacklist,
                                                required_edges=whitelist)

        return self.score_network()
예제 #2
0
    def test_required_and_prohibited_edges(self):
        net = network.random_network(self.nodes, required_edges=[(0,1), (3,0)],
                                     prohibited_edges=[(2,3), (1,4)])

        assert net.is_acyclic() == True and \
               (0,1) in net.edges and \
               (3,0) in net.edges and \
               (2,3) not in net.edges and \
               (1,4) not in net.edges
예제 #3
0
 def test_required_edges(self):
     net = network.random_network(self.nodes, required_edges=[(0,1), (3,0)])
     assert net.is_acyclic() == True and \
            (0,1) in net.edges and \
            (3,0) in net.edges
예제 #4
0
 def test_prohibited_edges(self):
     net = network.random_network(self.nodes, prohibited_edges=[(0,1), (3,0)])
     assert net.is_acyclic() == True and \
            (0,1) not in net.edges and \
            (3,0) not in net.edges
예제 #5
0
 def test_acyclic(self):
     net = network.random_network(self.nodes)
     assert net.is_acyclic() == True, "Random network is acyclic."