1
0
mirror of https://github.com/libp2p/go-libp2p-peerstore.git synced 2025-03-25 13:20:07 +08:00
go-libp2p-peerstore/pstoremem/inmem_test.go

62 lines
1.4 KiB
Go
Raw Permalink Normal View History

2018-09-05 01:07:44 +08:00
package pstoremem
import (
"testing"
pstore "github.com/libp2p/go-libp2p-core/peerstore"
2018-09-08 01:46:23 +08:00
pt "github.com/libp2p/go-libp2p-peerstore/test"
"go.uber.org/goleak"
)
func TestFuzzInMemoryPeerstore(t *testing.T) {
// Just create and close a bunch of peerstores. If this leaks, we'll
// catch it in the leak check below.
for i := 0; i < 100; i++ {
ps := NewPeerstore()
ps.Close()
}
}
func TestInMemoryPeerstore(t *testing.T) {
2018-09-08 01:46:23 +08:00
pt.TestPeerstore(t, func() (pstore.Peerstore, func()) {
ps := NewPeerstore()
return ps, func() { ps.Close() }
})
}
2018-09-05 22:08:33 +08:00
func TestInMemoryAddrBook(t *testing.T) {
2018-09-08 01:46:23 +08:00
pt.TestAddrBook(t, func() (pstore.AddrBook, func()) {
ps := NewPeerstore()
return ps, func() { ps.Close() }
})
}
func TestInMemoryKeyBook(t *testing.T) {
2018-09-08 01:46:23 +08:00
pt.TestKeyBook(t, func() (pstore.KeyBook, func()) {
ps := NewPeerstore()
return ps, func() { ps.Close() }
})
}
func BenchmarkInMemoryPeerstore(b *testing.B) {
2018-09-08 01:46:23 +08:00
pt.BenchmarkPeerstore(b, func() (pstore.Peerstore, func()) {
ps := NewPeerstore()
return ps, func() { ps.Close() }
}, "InMem")
}
func BenchmarkInMemoryKeyBook(b *testing.B) {
pt.BenchmarkKeyBook(b, func() (pstore.KeyBook, func()) {
ps := NewPeerstore()
return ps, func() { ps.Close() }
})
}
func TestMain(m *testing.M) {
goleak.VerifyTestMain(
m,
goleak.IgnoreTopFunction("github.com/ipfs/go-log/writer.(*MirrorWriter).logRoutine"),
)
}