mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2024-12-24 12:27:18 +00:00
417bb45398
* v2 refactor * fix up imports * builds * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge branch 'master' into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * imports keymanager v1 * Update validator/keymanager/v1/remote.go * Update validator/client/polling/propose.go * Update validator/keymanager/v1/wallet.go * fmt * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * Merge refs/heads/master into accounts-revamp-p1 * fix conf * fix build * gaz
78 lines
2.0 KiB
Go
78 lines
2.0 KiB
Go
package v1_test
|
|
|
|
import (
|
|
"fmt"
|
|
"testing"
|
|
|
|
"github.com/prysmaticlabs/prysm/shared/bls"
|
|
"github.com/prysmaticlabs/prysm/shared/bytesutil"
|
|
keymanager "github.com/prysmaticlabs/prysm/validator/keymanager/v1"
|
|
)
|
|
|
|
func TestDirectListValidatingKeysNil(t *testing.T) {
|
|
direct := keymanager.NewDirect(nil)
|
|
keys, err := direct.FetchValidatingKeys()
|
|
if err != nil {
|
|
t.Fatalf("Unexpected error: %v", err)
|
|
}
|
|
if len(keys) != 0 {
|
|
t.Errorf("Incorrect number of keys returned; expected 0, received %d", len(keys))
|
|
}
|
|
}
|
|
|
|
func TestDirectListValidatingKeysSingle(t *testing.T) {
|
|
sks := make([]bls.SecretKey, 0)
|
|
sks = append(sks, bls.RandKey())
|
|
direct := keymanager.NewDirect(sks)
|
|
keys, err := direct.FetchValidatingKeys()
|
|
if err != nil {
|
|
t.Fatalf("Unexpected error: %v", err)
|
|
}
|
|
if len(keys) != 1 {
|
|
t.Errorf("Incorrect number of keys returned; expected 1, received %d", len(keys))
|
|
}
|
|
}
|
|
|
|
func TestDirectListValidatingKeysMultiple(t *testing.T) {
|
|
sks := make([]bls.SecretKey, 0)
|
|
numKeys := 256
|
|
for i := 0; i < numKeys; i++ {
|
|
sks = append(sks, bls.RandKey())
|
|
}
|
|
direct := keymanager.NewDirect(sks)
|
|
keys, err := direct.FetchValidatingKeys()
|
|
if err != nil {
|
|
t.Fatalf("Unexpected error: %v", err)
|
|
}
|
|
if len(keys) != numKeys {
|
|
t.Errorf("Incorrect number of keys returned; expected %d, received %d", numKeys, len(keys))
|
|
}
|
|
}
|
|
|
|
func TestSignNoSuchKey(t *testing.T) {
|
|
sks := make([]bls.SecretKey, 0)
|
|
direct := keymanager.NewDirect(sks)
|
|
|
|
sig, err := direct.Sign([48]byte{}, [32]byte{})
|
|
if err != keymanager.ErrNoSuchKey {
|
|
t.Fatalf("Incorrect error: expected %v, received %v", keymanager.ErrNoSuchKey, err)
|
|
}
|
|
fmt.Printf("%v\n", sig)
|
|
}
|
|
|
|
func TestSign(t *testing.T) {
|
|
sks := make([]bls.SecretKey, 0)
|
|
sks = append(sks, bls.RandKey())
|
|
direct := keymanager.NewDirect(sks)
|
|
|
|
pubKey := bytesutil.ToBytes48(sks[0].PublicKey().Marshal())
|
|
msg := [32]byte{}
|
|
sig, err := direct.Sign(pubKey, msg)
|
|
if err != nil {
|
|
t.Fatalf("Unexpected error: %v", err)
|
|
}
|
|
if !sig.Verify(sks[0].PublicKey(), bytesutil.FromBytes32(msg)) {
|
|
t.Fatal("Failed to verify generated signature")
|
|
}
|
|
}
|