示例#1
0
    async def _test_pick_fastest(self):
        ledger = Mock(
            config={
                'default_servers': [
                    # fast but unhealthy, should be discarded
                    await self._make_bad_server(),
                    ('localhost', 1),
                    ('example.that.doesnt.resolve', 9000),
                    await self._make_fake_server(latency=1.0, port=1340),
                    await self._make_fake_server(latency=0.1, port=1337),
                    await self._make_fake_server(latency=0.4, port=1339),
                ],
                'connect_timeout':
                3
            })

        network = Network(ledger)
        self.addCleanup(network.stop)
        await network.start()
        await asyncio.wait_for(network.on_connected.first, timeout=10)
        self.assertTrue(network.is_connected)
        self.assertTupleEqual(network.client.server, ('127.0.0.1', 1337))
        self.assertTrue(
            all([
                not session.is_closing()
                for session in network.session_pool.available_sessions
            ]))
        # ensure we are connected to all of them after a while
        await asyncio.sleep(1)
        self.assertEqual(len(list(network.session_pool.available_sessions)), 3)
示例#2
0
    async def test_pick_fastest(self):
        ledger = Mock(config={
            'default_servers': [
                # fast but unhealthy, should be discarded
                # await self._make_bad_server(),
                ('localhost', 1),
                ('example.that.doesnt.resolve', 9000),
                await self._make_fake_server(latency=1.0, port=1340),
                await self._make_fake_server(latency=0.1, port=1337),
                await self._make_fake_server(latency=0.4, port=1339),
            ],
            'connect_timeout': 3
        })

        network = Network(ledger)
        self.addCleanup(network.stop)
        await network.start()
        await asyncio.wait_for(network.on_connected.first, timeout=10)
        self.assertTrue(network.is_connected)
        self.assertTupleEqual(network.client.server, ('127.0.0.1', 1337))