예제 #1
0
class TestCoord(unittest.TestCase):
    def setUp(self):
        radar = FakeRadar()
        maproute = MapRoute(levels=4, gsize=256, me=[8, 19, 82, 84])
        p2pall = P2PAll(radar, maproute)
        self.coord = Coord(radar, maproute, p2pall)

    def test_h(self):
        '''Test h function: KEY->IP'''
        me = self.coord.maproute.me
        for i in range(self.coord.maproute.levels):
            self.failUnlessEqual(
                self.coord.h((i, self.coord.maproute.me)),
                list(itertools.chain([0 for _ in range(i)], me[i:])))

    def test_coornodes_set(self):
        '''Set up of the coordinator nodes of each level'''
        self.failUnlessEqual(self.coord.coordnode,
                             [None] * self.coord.maproute.levels)

        self.coord.participant_add([2, 19, 82, 84])

        self.coord.coornodes_set()
        self.failUnlessEqual(self.coord.coordnode,
                             [[2, 19, 82, 84]] * self.coord.maproute.levels)

    def test_new_participant_joined(self):
        '''New participant joined'''
        self.failUnlessEqual(self.coord.coordnode,
                             [None] * self.coord.maproute.levels)
        self.coord.participant_add([2, 19, 82, 84])
        self.coord.new_participant_joined(0, 2)
        stackless.run()
        self.failUnlessEqual(self.coord.coordnode,
                             [None, [2, 19, 82, 84], None, None])
예제 #2
0
class TestCoord(unittest.TestCase):

    def setUp(self):
        radar = FakeRadar()
        maproute = MapRoute(levels=4, gsize=256, me=[8, 19, 82, 84])
        p2pall = P2PAll(radar, maproute)
        self.coord = Coord(radar, maproute, p2pall)

    def test_h(self):
        '''Test h function: KEY->IP'''
        me = self.coord.maproute.me
        for i in range(self.coord.maproute.levels):
            self.failUnlessEqual(self.coord.h((i, self.coord.maproute.me)),
                                 list(itertools.chain([0 for _ in range(i)],
                                                      me[i:])))

    def test_coornodes_set(self):
        '''Set up of the coordinator nodes of each level'''
        self.failUnlessEqual(self.coord.coordnode,
                             [None] * self.coord.maproute.levels)

        self.coord.participant_add([2, 19, 82, 84])

        self.coord.coornodes_set()
        self.failUnlessEqual(self.coord.coordnode,
                             [[2, 19, 82, 84]] * self.coord.maproute.levels)

    def test_new_participant_joined(self):
        '''New participant joined'''
        self.failUnlessEqual(self.coord.coordnode,
                             [None] * self.coord.maproute.levels)
        self.coord.participant_add([2, 19, 82, 84])
        self.coord.new_participant_joined(0, 2)
        stackless.run()
        self.failUnlessEqual(self.coord.coordnode,
                             [None, [2, 19, 82, 84], None, None])
예제 #3
0
 def setUp(self):
     radar = FakeRadar()
     maproute = MapRoute(levels=4, gsize=256, me=[8, 19, 82, 84])
     p2pall = P2PAll(radar, maproute)
     self.coord = Coord(radar, maproute, p2pall)
예제 #4
0
 def setUp(self):
     radar = FakeRadar()
     maproute = MapRoute(levels=4, gsize=256, me=[8, 19, 82, 84])
     p2pall = P2PAll(radar, maproute)
     self.coord = Coord(radar, maproute, p2pall)