예제 #1
0
 def test_get_info(self):
     x = TaskPool(10)
     x._pool = Mock(name='_pool')
     assert x._get_info() == {
         'max-concurrency': 10,
         'free-threads': x._pool.free(),
         'running-threads': x._pool.running(),
     }
예제 #2
0
 def test_get_info(self):
     x = TaskPool(10)
     x._pool = Mock(name='_pool')
     self.assertDictEqual(x._get_info(), {
         'max-concurrency': 10,
         'free-threads': x._pool.free(),
         'running-threads': x._pool.running(),
     })
예제 #3
0
    def test_make_killable_target(self):
        def valid_target():
            return "some result..."

        def terminating_target():
            raise GreenletExit()

        assert TaskPool._make_killable_target(
            valid_target)() == "some result..."
        assert TaskPool._make_killable_target(terminating_target)() == (False,
                                                                        None,
                                                                        None)
예제 #4
0
    def test_terminate_job(self):
        func = Mock()
        pool = TaskPool(10)
        pool.on_start()
        pool.on_apply(func)

        assert len(pool._pool_map.keys()) == 1
        pid = list(pool._pool_map.keys())[0]
        greenlet = pool._pool_map[pid]

        pool.terminate_job(pid)
        greenlet.link.assert_called_once()
        greenlet.kill.assert_called_once()
예제 #5
0
 def test_shrink(self):
     x = TaskPool(10)
     x._pool = Mock(name='_pool')
     x.shrink(2)
     assert x.limit == 8
     x._pool.resize.assert_called_with(8)
예제 #6
0
 def test_grow(self):
     x = TaskPool(10)
     x._pool = Mock(name='_pool')
     x.grow(2)
     assert x.limit == 12
     x._pool.resize.assert_called_with(12)
예제 #7
0
 def test_pool(self):
     with mock_module(*eventlet_modules):
         with patch_many('eventlet.greenpool.GreenPool',
                         'eventlet.greenthread') as (GreenPool,
                                                     greenthread):
             x = TaskPool()
             x.on_start()
             x.on_stop()
             x.on_apply(Mock())
             x._pool = None
             x.on_stop()
             self.assertTrue(x.getpid())
예제 #8
0
 def test_shrink(self):
     x = TaskPool(10)
     x._pool = Mock(name='_pool')
     x.shrink(2)
     self.assertEqual(x.limit, 8)
     x._pool.resize.assert_called_with(8)
예제 #9
0
 def test_grow(self):
     x = TaskPool(10)
     x._pool = Mock(name='_pool')
     x.grow(2)
     self.assertEqual(x.limit, 12)
     x._pool.resize.assert_called_with(12)
예제 #10
0
 def test_shrink(self):
     x = TaskPool(10)
     x._pool = Mock(name='_pool')
     x.shrink(2)
     assert x.limit == 8
     x._pool.resize.assert_called_with(8)
예제 #11
0
 def test_shrink(self):
     x = TaskPool(10)
     x._pool = Mock(name='_pool')
     x.shrink(2)
     self.assertEqual(x.limit, 8)
     x._pool.resize.assert_called_with(8)
예제 #12
0
 def test_grow(self):
     x = TaskPool(10)
     x._pool = Mock(name='_pool')
     x.grow(2)
     self.assertEqual(x.limit, 12)
     x._pool.resize.assert_called_with(12)
예제 #13
0
 def test_pool(self):
     x = TaskPool()
     x.on_start()
     x.on_stop()
     x.on_apply(Mock())
     x._pool = None
     x.on_stop()
     assert len(x._pool_map.keys()) == 1
     assert x.getpid()
예제 #14
0
 def test_cleanup_after_job_finish(self):
     testMap = {'1': None}
     TaskPool._cleanup_after_job_finish(None, testMap, '1')
     assert len(testMap) == 0
예제 #15
0
 def test_get_info(self):
     x = TaskPool(10)
     x._pool = Mock(name="_pool")
     self.assertDictEqual(
         x._get_info(), {"max-concurrency": 10, "free-threads": x._pool.free(), "running-threads": x._pool.running()}
     )
예제 #16
0
 def test_pool(self):
     x = TaskPool()
     x.on_start()
     x.on_stop()
     x.on_apply(Mock())
     x._pool = None
     x.on_stop()
     self.assertTrue(x.getpid())
예제 #17
0
 def test_pool(self):
     x = TaskPool()
     x.on_start()
     x.on_stop()
     x.on_apply(Mock())
     x._pool = None
     x.on_stop()
     assert x.getpid()
예제 #18
0
 def test_grow(self):
     x = TaskPool(10)
     x._pool = Mock(name='_pool')
     x.grow(2)
     assert x.limit == 12
     x._pool.resize.assert_called_with(12)