2
0

Add Resource.Hijack

This commit is contained in:
Jack Christensen
2018-12-26 13:01:31 -06:00
parent af5402c2dd
commit 7df4afe7d3
2 changed files with 46 additions and 0 deletions
+19
View File
@@ -264,6 +264,25 @@ func TestPoolCloseBlocksUntilAllResourcesReleasedAndClosed(t *testing.T) {
}
func TestResourceDestroyRemovesResourceFromPool(t *testing.T) {
createFunc, _ := createCreateResourceFunc()
var closeCalls Counter
closeFunc := func(interface{}) {
closeCalls.Next()
}
pool := puddle.NewPool(createFunc, closeFunc)
res, err := pool.Acquire(context.Background())
require.NoError(t, err)
assert.Equal(t, 1, res.Value())
res.Hijack()
assert.Equal(t, 0, pool.Size())
assert.Equal(t, 0, closeCalls.Value())
}
func TestResourceHijackRemovesResourceFromPoolButDoesNotDestroy(t *testing.T) {
createFunc, _ := createCreateResourceFunc()
pool := puddle.NewPool(createFunc, stubCloseRes)