mirror of
https://github.com/ipfs/kubo.git
synced 2025-11-01 10:48:30 +08:00
- Modified Godeps/Godeps.json by hand - [TEST] Updated welcome docs hash to sharness - [TEST] Updated contact doc - [TEST] disabled breaking test (t0080-repo refs local)
56 lines
1014 B
Go
56 lines
1014 B
Go
package testutil
|
|
|
|
import (
|
|
"testing"
|
|
|
|
ma "github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-multiaddr"
|
|
ci "github.com/ipfs/go-ipfs/p2p/crypto"
|
|
peer "github.com/ipfs/go-ipfs/p2p/peer"
|
|
)
|
|
|
|
type Identity interface {
|
|
Address() ma.Multiaddr
|
|
ID() peer.ID
|
|
PrivateKey() ci.PrivKey
|
|
PublicKey() ci.PubKey
|
|
}
|
|
|
|
// TODO add a cheaper way to generate identities
|
|
|
|
func RandIdentity() (Identity, error) {
|
|
p, err := RandPeerNetParams()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return &identity{*p}, nil
|
|
}
|
|
|
|
func RandIdentityOrFatal(t *testing.T) Identity {
|
|
p, err := RandPeerNetParams()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
return &identity{*p}
|
|
}
|
|
|
|
// identity is a temporary shim to delay binding of PeerNetParams.
|
|
type identity struct {
|
|
PeerNetParams
|
|
}
|
|
|
|
func (p *identity) ID() peer.ID {
|
|
return p.PeerNetParams.ID
|
|
}
|
|
|
|
func (p *identity) Address() ma.Multiaddr {
|
|
return p.Addr
|
|
}
|
|
|
|
func (p *identity) PrivateKey() ci.PrivKey {
|
|
return p.PrivKey
|
|
}
|
|
|
|
func (p *identity) PublicKey() ci.PubKey {
|
|
return p.PubKey
|
|
}
|