diff --git a/consensus-types/payload-attribute/getters.go b/consensus-types/payload-attribute/getters.go index 4d92a2fdba..0d446d1810 100644 --- a/consensus-types/payload-attribute/getters.go +++ b/consensus-types/payload-attribute/getters.go @@ -61,7 +61,7 @@ func (a *data) PbV2() (*enginev1.PayloadAttributesV2, error) { if a == nil { return nil, errNilPayloadAttribute } - if a.version < version.Capella { + if a.version != version.Capella { return nil, consensus_types.ErrNotSupported("PbV2", a.version) } if a.timeStamp == 0 && len(a.prevRandao) == 0 { diff --git a/consensus-types/payload-attribute/getters_test.go b/consensus-types/payload-attribute/getters_test.go index 96b4416920..dd3b2995f0 100644 --- a/consensus-types/payload-attribute/getters_test.go +++ b/consensus-types/payload-attribute/getters_test.go @@ -182,6 +182,22 @@ func TestPayloadAttributeGetters(t *testing.T) { require.Equal(t, (*enginev1.PayloadAttributesV3)(nil), got) }, }, + { + name: "Get PbDeneb on pbv2 will fail", + tc: func(t *testing.T) { + p := &enginev1.PayloadAttributesV3{ + Timestamp: 1, + PrevRandao: []byte{1, 2, 3}, + SuggestedFeeRecipient: []byte{4, 5, 6}, + Withdrawals: []*enginev1.Withdrawal{{Index: 1}, {Index: 2}, {Index: 3}}, + ParentBeaconBlockRoot: []byte{'a'}, + } + a, err := New(p) + require.NoError(t, err) + _, err = a.PbV2() + require.ErrorContains(t, "PbV2 is not supported for deneb", err) + }, + }, } for _, test := range tests {