Skip to content

Commit ef90699

Browse files
Fully populate test context (#3943)
1 parent a90944d commit ef90699

File tree

2 files changed

+24
-14
lines changed

2 files changed

+24
-14
lines changed

snow/consensus/snowman/consensus_test.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -521,6 +521,10 @@ func RecordPollSplitVoteNoChangeTest(t *testing.T, factory Factory) {
521521

522522
firstBlock := snowmantest.BuildChild(snowmantest.Genesis)
523523
secondBlock := snowmantest.BuildChild(snowmantest.Genesis)
524+
// Ensure that the blocks have at least one bit as a common prefix
525+
for firstBlock.IDV.Bit(0) != secondBlock.IDV.Bit(0) {
526+
secondBlock = snowmantest.BuildChild(snowmantest.Genesis)
527+
}
524528

525529
require.NoError(sm.Add(firstBlock))
526530
require.NoError(sm.Add(secondBlock))

snow/snowtest/context.go

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -12,19 +12,22 @@ import (
1212
"github.com/stretchr/testify/require"
1313

1414
"github.com/ava-labs/avalanchego/api/metrics"
15+
"github.com/ava-labs/avalanchego/chains/atomic"
16+
"github.com/ava-labs/avalanchego/database/memdb"
1517
"github.com/ava-labs/avalanchego/ids"
1618
"github.com/ava-labs/avalanchego/snow"
1719
"github.com/ava-labs/avalanchego/snow/validators/validatorstest"
1820
"github.com/ava-labs/avalanchego/upgrade/upgradetest"
1921
"github.com/ava-labs/avalanchego/utils/constants"
2022
"github.com/ava-labs/avalanchego/utils/crypto/bls/signer/localsigner"
2123
"github.com/ava-labs/avalanchego/utils/logging"
24+
"github.com/ava-labs/avalanchego/vms/platformvm/warp"
2225
)
2326

2427
var (
28+
PChainID = constants.PlatformChainID
2529
XChainID = ids.GenerateTestID()
2630
CChainID = ids.GenerateTestID()
27-
PChainID = constants.PlatformChainID
2831
AVAXAssetID = ids.GenerateTestID()
2932

3033
errMissing = errors.New("missing")
@@ -56,9 +59,12 @@ func Context(tb testing.TB, chainID ids.ID) *snow.Context {
5659
require.NoError(err)
5760
publicKey := secretKey.PublicKey()
5861

62+
memory := atomic.NewMemory(memdb.New())
63+
sharedMemory := memory.NewSharedMemory(chainID)
64+
5965
aliaser := ids.NewAliaser()
60-
require.NoError(aliaser.Alias(constants.PlatformChainID, "P"))
61-
require.NoError(aliaser.Alias(constants.PlatformChainID, constants.PlatformChainID.String()))
66+
require.NoError(aliaser.Alias(PChainID, "P"))
67+
require.NoError(aliaser.Alias(PChainID, PChainID.String()))
6268
require.NoError(aliaser.Alias(XChainID, "X"))
6369
require.NoError(aliaser.Alias(XChainID, XChainID.String()))
6470
require.NoError(aliaser.Alias(CChainID, "C"))
@@ -69,33 +75,33 @@ func Context(tb testing.TB, chainID ids.ID) *snow.Context {
6975
return 0, nil
7076
},
7177
GetSubnetIDF: func(_ context.Context, chainID ids.ID) (ids.ID, error) {
72-
subnetID, ok := map[ids.ID]ids.ID{
73-
constants.PlatformChainID: constants.PrimaryNetworkID,
74-
XChainID: constants.PrimaryNetworkID,
75-
CChainID: constants.PrimaryNetworkID,
76-
}[chainID]
77-
if !ok {
78+
switch chainID {
79+
case PChainID, XChainID, CChainID:
80+
return constants.PrimaryNetworkID, nil
81+
default:
7882
return ids.Empty, errMissing
7983
}
80-
return subnetID, nil
8184
},
8285
}
8386

8487
return &snow.Context{
8588
NetworkID: constants.UnitTestID,
8689
SubnetID: constants.PrimaryNetworkID,
8790
ChainID: chainID,
88-
NodeID: ids.EmptyNodeID,
91+
NodeID: ids.GenerateTestNodeID(),
8992
PublicKey: publicKey,
9093
NetworkUpgrades: upgradetest.GetConfig(upgradetest.Latest),
9194

9295
XChainID: XChainID,
9396
CChainID: CChainID,
9497
AVAXAssetID: AVAXAssetID,
9598

96-
Log: logging.NoLog{},
97-
BCLookup: aliaser,
98-
Metrics: metrics.NewPrefixGatherer(),
99+
Log: logging.NoLog{},
100+
SharedMemory: sharedMemory,
101+
BCLookup: aliaser,
102+
Metrics: metrics.NewPrefixGatherer(),
103+
104+
WarpSigner: warp.NewSigner(secretKey, constants.UnitTestID, chainID),
99105

100106
ValidatorState: validatorState,
101107
ChainDataDir: tb.TempDir(),

0 commit comments

Comments
 (0)