prysm-pulse/testing/endtoend/components/web3remotesigner_test.go
james-prysm 966de59478
E2E: switching to run time generated yaml for web3signer (#10513)
* switching to run time generated yaml

* fixing bazel

* fixing unit test

* fixing linter problems

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-04-23 08:41:24 +00:00

46 lines
1.0 KiB
Go

package components_test
import (
"context"
"testing"
"time"
"github.com/prysmaticlabs/prysm/config/params"
"github.com/prysmaticlabs/prysm/testing/endtoend/components"
e2eparams "github.com/prysmaticlabs/prysm/testing/endtoend/params"
"github.com/prysmaticlabs/prysm/testing/require"
)
func TestWeb3RemoteSigner_StartsAndReturnsPublicKeys(t *testing.T) {
require.NoError(t, e2eparams.Init(0))
wsc := components.NewWeb3RemoteSigner()
ctx, cancel := context.WithTimeout(context.Background(), 30*time.Second)
defer cancel()
go func() {
if err := wsc.Start(ctx); err != nil {
t.Error(err)
panic(err)
}
}()
select {
case <-ctx.Done():
t.Fatal("Web3RemoteSigner did not start within timeout")
case <-wsc.Started():
t.Log("Web3RemoteSigner started")
break
}
time.Sleep(10 * time.Second)
keys, err := wsc.PublicKeys(ctx)
require.NoError(t, err)
if uint64(len(keys)) != params.BeaconConfig().MinGenesisActiveValidatorCount {
t.Fatalf("Expected %d keys, got %d", params.BeaconConfig().MinGenesisActiveValidatorCount, len(keys))
}
}