def test_checkout_after_shutdown_raises_exception(self): p = Pool(WidgetFactory()) p.shutdown() try: p.checkout() except Exception, e: pass # Success
def test_shrink_reclaims_unused_resources_with_existing_checkouts(self): p = Pool(WidgetFactory()) w1 = p.checkout() w2 = p.checkout() w3 = p.checkout() p.checkin(w1) p.checkin(w2) p.shrink() self.assertEquals(1, p.size()) self.assertEquals(0, p.available())
def test_grow_shrink_combos(self): p = Pool(WidgetFactory()) p.grow(5) p.shrink() p.grow(20) p.checkout() p.shrink() p.checkout() p.grow(3) self.assertEquals(3, p.size()) self.assertEquals(1, p.available())
def test_grow_expands_resource_pool_when_requested_size_greater_than_current_size(self): p = Pool(WidgetFactory()) p.grow(3) self.assertEquals(3, p.size()) self.assertEquals(3, p.available()) for i in range(5): p.checkout() p.grow(10) self.assertEquals(10, p.size()) self.assertEquals(10-5, p.available())
def test_grow_does_nothing_when_requested_size_less_than_or_equal_to_current_size(self): p = Pool(WidgetFactory()) for i in range(10): p.checkout() p.grow(5) self.assertEquals(10, p.size()) self.assertEquals(0, p.available()) p.grow(10) self.assertEquals(10, p.size()) self.assertEquals(0, p.available())
def test_grow_expands_resource_pool_when_requested_size_greater_than_current_size( self): p = Pool(WidgetFactory()) p.grow(3) self.assertEquals(3, p.size()) self.assertEquals(3, p.available()) for i in range(5): p.checkout() p.grow(10) self.assertEquals(10, p.size()) self.assertEquals(10 - 5, p.available())
def test_grow_does_nothing_when_requested_size_less_than_or_equal_to_current_size( self): p = Pool(WidgetFactory()) for i in range(10): p.checkout() p.grow(5) self.assertEquals(10, p.size()) self.assertEquals(0, p.available()) p.grow(10) self.assertEquals(10, p.size()) self.assertEquals(0, p.available())
def test_checkin_checkout(self): p = Pool(WidgetFactory()) w1 = p.checkout() log.debug(w1) self.assertEquals(1, p.size()) self.assertEquals(0, p.available()) p.checkin(w1) self.assertEquals(1, p.size()) self.assertEquals(1, p.available()) w2 = p.checkout() self.assertEquals(w1, w2) self.assertEquals(1, p.size()) self.assertEquals(0, p.available())
def test_shrink_does_nothing_to_pool_when_available_is_zero(self): p = Pool(WidgetFactory()) p.checkout() p.shrink() self.assertEquals(1, p.size()) self.assertEquals(0, p.available())