mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2025-01-11 12:10:05 +00:00
1b6a0703e3
* Show attesting and proposing counts in "Next duty" log output * Use map to store all the counts instead of magic reset Co-authored-by: terence tsao <terence@prysmaticlabs.com> Co-authored-by: Raul Jordan <raul@prysmaticlabs.com> Co-authored-by: Victor Farazdagi <simple.square@gmail.com>
75 lines
2.3 KiB
Go
75 lines
2.3 KiB
Go
package client
|
|
|
|
import (
|
|
"testing"
|
|
|
|
ethpb "github.com/prysmaticlabs/ethereumapis/eth/v1alpha1"
|
|
"github.com/prysmaticlabs/prysm/shared/testutil/require"
|
|
logTest "github.com/sirupsen/logrus/hooks/test"
|
|
)
|
|
|
|
func TestLogNextDutyCountDown_NoDuty(t *testing.T) {
|
|
hook := logTest.NewGlobal()
|
|
v := &validator{
|
|
logDutyCountDown: true,
|
|
duties: ðpb.DutiesResponse{CurrentEpochDuties: []*ethpb.DutiesResponse_Duty{
|
|
{AttesterSlot: 100, ProposerSlots: []uint64{105}},
|
|
{AttesterSlot: 110},
|
|
{AttesterSlot: 120},
|
|
}},
|
|
}
|
|
require.NoError(t, v.LogNextDutyTimeLeft(121))
|
|
require.LogsContain(t, hook, "No duty until next epoch")
|
|
}
|
|
|
|
func TestLogNextDutyCountDown_HasDutyAttester(t *testing.T) {
|
|
hook := logTest.NewGlobal()
|
|
v := &validator{
|
|
logDutyCountDown: true,
|
|
duties: ðpb.DutiesResponse{CurrentEpochDuties: []*ethpb.DutiesResponse_Duty{
|
|
{AttesterSlot: 100, ProposerSlots: []uint64{105}},
|
|
{AttesterSlot: 110},
|
|
{AttesterSlot: 120},
|
|
}},
|
|
}
|
|
require.NoError(t, v.LogNextDutyTimeLeft(115))
|
|
require.LogsContain(t, hook, "\"Next duty\" attesting=1 currentSlot=115 dutySlot=120 prefix=validator proposing=0")
|
|
}
|
|
|
|
func TestLogNextDutyCountDown_HasDutyProposer(t *testing.T) {
|
|
hook := logTest.NewGlobal()
|
|
v := &validator{
|
|
logDutyCountDown: true,
|
|
duties: ðpb.DutiesResponse{CurrentEpochDuties: []*ethpb.DutiesResponse_Duty{
|
|
{AttesterSlot: 100, ProposerSlots: []uint64{105}},
|
|
{AttesterSlot: 110},
|
|
{AttesterSlot: 120},
|
|
}},
|
|
}
|
|
require.NoError(t, v.LogNextDutyTimeLeft(101))
|
|
require.LogsContain(t, hook, "\"Next duty\" attesting=0 currentSlot=101 dutySlot=105 prefix=validator proposing=1")
|
|
}
|
|
|
|
func TestLogNextDutyCountDown_HasMultipleDuties(t *testing.T) {
|
|
hook := logTest.NewGlobal()
|
|
v := &validator{
|
|
logDutyCountDown: true,
|
|
duties: ðpb.DutiesResponse{CurrentEpochDuties: []*ethpb.DutiesResponse_Duty{
|
|
{AttesterSlot: 120},
|
|
{AttesterSlot: 110},
|
|
{AttesterSlot: 105},
|
|
{AttesterSlot: 105},
|
|
{AttesterSlot: 100, ProposerSlots: []uint64{105}},
|
|
}},
|
|
}
|
|
require.NoError(t, v.LogNextDutyTimeLeft(101))
|
|
require.LogsContain(t, hook, "\"Next duty\" attesting=2 currentSlot=101 dutySlot=105 prefix=validator proposing=1")
|
|
}
|
|
|
|
func TestLogNextDutyCountDown_NilDuty(t *testing.T) {
|
|
v := &validator{
|
|
logDutyCountDown: true,
|
|
}
|
|
require.NoError(t, v.LogNextDutyTimeLeft(101))
|
|
}
|