From 8af2c42682b24eb2e1eb85eab7122be01892d415 Mon Sep 17 00:00:00 2001 From: Matheus Degiovani Date: Wed, 16 Nov 2022 16:55:24 -0300 Subject: [PATCH] dcrdtest: Use adjusted simnet miner for tests This speeds up test execution. --- .gitignore | 1 + dcrdtest/simnet_miner.go | 8 ++++++++ dcrdtest/votingwallet_test.go | 9 ++++++++- 3 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c97b1ed --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +dcrdlogs diff --git a/dcrdtest/simnet_miner.go b/dcrdtest/simnet_miner.go index 21f7769..8cc41f4 100644 --- a/dcrdtest/simnet_miner.go +++ b/dcrdtest/simnet_miner.go @@ -196,3 +196,11 @@ func AdjustedSimnetMiner(ctx context.Context, client *rpcclient.Client, nb uint3 return hashes, nil } + +// AdjustedSimnetMinerForClient returns a miner function that closes over the +// passed rpclient to use the adjusted simnet miner to generate blocks. +func AdjustedSimnetMinerForClient(c *rpcclient.Client) func(ctx context.Context, nb uint32) ([]*chainhash.Hash, error) { + return func(ctx context.Context, nb uint32) ([]*chainhash.Hash, error) { + return AdjustedSimnetMiner(ctx, c, nb) + } +} diff --git a/dcrdtest/votingwallet_test.go b/dcrdtest/votingwallet_test.go index 96ce65b..2bfda39 100644 --- a/dcrdtest/votingwallet_test.go +++ b/dcrdtest/votingwallet_test.go @@ -63,6 +63,7 @@ func TestMinimalVotingWallet(t *testing.T) { logDir := "./dcrdlogs" extraArgs := []string{ "--debuglevel=debug", + "--logdir=" + logDir, } info, err := os.Stat(logDir) @@ -87,12 +88,16 @@ func TestMinimalVotingWallet(t *testing.T) { ctx, cancel := context.WithCancel(context.Background()) defer cancel() - err = hn.SetUp(ctx, true, 8) + err = hn.SetUp(ctx, false, 0) if err != nil { t.Fatal(err) } defer hn.TearDown() + if _, err := AdjustedSimnetMiner(ctx, hn.Node, 64); err != nil { + t.Fatal(err) + } + type testCase struct { name string f func(ctx context.Context, t *testing.T, vw *VotingWallet) @@ -113,6 +118,8 @@ func TestMinimalVotingWallet(t *testing.T) { t1.Fatalf("unable to create voting wallet for test: %v", err) } + vw.SetMiner(AdjustedSimnetMinerForClient(hn.Node)) + err = vw.Start(ctx) if err != nil { t1.Fatalf("unable to setup voting wallet: %v", err)