def test_async_shortcuts(self): """ Test the 'all_completed'/'as_completed' shortcut methods """ pool = Pool(TEST_SECRET_KEY, TEST_ACCESS_KEY) mock = flexmock(AsyncResponse) mock.should_receive('as_completed').once() pool.as_completed([]) mock.should_receive('all_completed').once() pool.all_completed([])
def create_and_run(cb): def f(i): return i p = Pool(TEST_SECRET_KEY, TEST_ACCESS_KEY) r = p.pool.map_async(f, range(5)) cb(r.get())
def test_all_completed(self): """ Test the all completed """ # Create mock futures futures = [Future(), Future(), Future()] # Create a default pool pool = Pool(TEST_ACCESS_KEY, TEST_SECRET_KEY) # Resolve futures with a simple object for i in futures: i.set_result(DUMMY_OBJECT) # Make sure all the results are dummy objects for i in pool.all_completed(futures): self.assertEquals(i, DUMMY_OBJECT)
def test_pool_creation(self): """ Test creating a pool """ # Test new pool with auth pool = Pool(TEST_SECRET_KEY, TEST_ACCESS_KEY, default_bucket='bucket', ssl=True) self.assertEquals(pool.ssl, True) self.assertEquals(pool.default_bucket, 'bucket') self.assertTrue(isinstance(pool.auth, S3Auth)) self.assertTrue(isinstance(pool.pool, ThreadPool)) # Test new pool with different size pool = Pool(TEST_SECRET_KEY, TEST_ACCESS_KEY, size=25)
def test_pool_creation(self): """ Test creating a pool """ # Test new pool with auth pool = Pool(TEST_ACCESS_KEY, TEST_SECRET_KEY, default_bucket='bucket', tls=True) self.assertEquals(pool.tls, True) self.assertEquals(pool.default_bucket, 'bucket') self.assertTrue(isinstance(pool.auth, S3Auth)) self.assertTrue(isinstance(pool.executor, ThreadPoolExecutor)) # Test new pool with different size pool = Pool(TEST_ACCESS_KEY, TEST_SECRET_KEY, size=25) self.assertEquals(pool.executor._max_workers, 25)
def test_pool_as_context_manager(self): """ Test the pool's context_management ability """ pool = Pool(TEST_ACCESS_KEY, TEST_SECRET_KEY) flexmock(pool).should_receive('close').once() with pool as p: # do nothing pass