initial import
This commit is contained in:
22
core/syncx/managedresource_test.go
Normal file
22
core/syncx/managedresource_test.go
Normal file
@@ -0,0 +1,22 @@
|
||||
package syncx
|
||||
|
||||
import (
|
||||
"sync/atomic"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestManagedResource(t *testing.T) {
|
||||
var count int32
|
||||
resource := NewManagedResource(func() interface{} {
|
||||
return atomic.AddInt32(&count, 1)
|
||||
}, func(a, b interface{}) bool {
|
||||
return a == b
|
||||
})
|
||||
|
||||
assert.Equal(t, resource.Take(), resource.Take())
|
||||
old := resource.Take()
|
||||
resource.MarkBroken(old)
|
||||
assert.NotEqual(t, old, resource.Take())
|
||||
}
|
||||
Reference in New Issue
Block a user