refactor testkit in lotus-soup to include Subsystems when instantiating miner

This commit is contained in:
Anton Evangelatov 2021-07-07 14:21:28 +02:00
parent 6b014f57e5
commit 1fe08f5973
3 changed files with 19 additions and 5 deletions

View File

@ -13,7 +13,7 @@ require (
github.com/filecoin-project/go-jsonrpc v0.1.4-0.20210217175800-45ea43ac2bec
github.com/filecoin-project/go-state-types v0.1.1-0.20210506134452-99b279731c48
github.com/filecoin-project/go-storedcounter v0.0.0-20200421200003-1c99c62e8a5b
github.com/filecoin-project/lotus v1.10.1-0.20210702102407-9e85492b854c
github.com/filecoin-project/lotus v1.10.1-0.20210707115637-6b014f57e522
github.com/filecoin-project/specs-actors v0.9.14
github.com/google/uuid v1.1.2
github.com/gorilla/mux v1.7.4

View File

@ -325,6 +325,8 @@ github.com/filecoin-project/go-storedcounter v0.0.0-20200421200003-1c99c62e8a5b
github.com/filecoin-project/go-storedcounter v0.0.0-20200421200003-1c99c62e8a5b/go.mod h1:Q0GQOBtKf1oE10eSXSlhN45kDBdGvEcVOqMiffqX+N8=
github.com/filecoin-project/lotus v1.10.1-0.20210702102407-9e85492b854c h1:OwNRt4+vT1gAF98Q9v4wZJ8gVySltM08i5qn8XUcykI=
github.com/filecoin-project/lotus v1.10.1-0.20210702102407-9e85492b854c/go.mod h1:V2+slhg/GRYb7m31ROOxJV2/zd+iQJ7FpH3xED1OUL4=
github.com/filecoin-project/lotus v1.10.1-0.20210707115637-6b014f57e522 h1:ZNvm32QSke11ZqqKQgY0KqG6Qv9wMsWhXfRSTkWNHSI=
github.com/filecoin-project/lotus v1.10.1-0.20210707115637-6b014f57e522/go.mod h1:8ooe5Rzw80rJL0br81A8NNiwZ4BUVzPRwAnDxUG4E7g=
github.com/filecoin-project/specs-actors v0.9.4/go.mod h1:BStZQzx5x7TmCkLv0Bpa07U6cPKol6fd3w9KjMPZ6Z4=
github.com/filecoin-project/specs-actors v0.9.12/go.mod h1:TS1AW/7LbG+615j4NsjMK1qlpAwaFsG9w0V2tg2gSao=
github.com/filecoin-project/specs-actors v0.9.13/go.mod h1:TS1AW/7LbG+615j4NsjMK1qlpAwaFsG9w0V2tg2gSao=

View File

@ -27,6 +27,7 @@ import (
"github.com/filecoin-project/lotus/markets/storageadapter"
"github.com/filecoin-project/lotus/miner"
"github.com/filecoin-project/lotus/node"
"github.com/filecoin-project/lotus/node/config"
"github.com/filecoin-project/lotus/node/impl"
"github.com/filecoin-project/lotus/node/modules"
"github.com/filecoin-project/lotus/node/repo"
@ -52,6 +53,7 @@ type LotusMiner struct {
NodeRepo repo.Repo
FullNetAddrs []peer.AddrInfo
GenesisMsg *GenesisMsg
Subsystems config.MinerSubsystemConfig
t *TestEnvironment
}
@ -141,12 +143,22 @@ func PrepareMiner(t *TestEnvironment) (*LotusMiner, error) {
return nil, err
}
var subsystems config.MinerSubsystemConfig
{
lr, err := minerRepo.Lock(repo.StorageMiner)
if err != nil {
return nil, err
}
c, err := lr.Config()
if err != nil {
return nil, err
}
cfg := c.(config.StorageMiner)
subsystems = cfg.Subsystems
ks, err := lr.KeyStore()
if err != nil {
return nil, err
@ -260,7 +272,7 @@ func PrepareMiner(t *TestEnvironment) (*LotusMiner, error) {
}
minerOpts := []node.Option{
node.StorageMiner(&n.MinerApi),
node.StorageMiner(&n.MinerApi, subsystems),
node.Base(),
node.Repo(minerRepo),
node.Override(new(api.FullNode), n.FullApi),
@ -416,7 +428,7 @@ func PrepareMiner(t *TestEnvironment) (*LotusMiner, error) {
return err.ErrorOrNil()
}
m := &LotusMiner{n, minerRepo, nodeRepo, fullNetAddrs, genesisMsg, t}
m := &LotusMiner{n, minerRepo, nodeRepo, fullNetAddrs, genesisMsg, subsystems, t}
return m, nil
}
@ -457,7 +469,7 @@ func RestoreMiner(t *TestEnvironment, m *LotusMiner) (*LotusMiner, error) {
}
minerOpts := []node.Option{
node.StorageMiner(&n.MinerApi),
node.StorageMiner(&n.MinerApi, m.Subsystems),
node.Base(),
node.Repo(minerRepo),
node.Override(new(api.FullNode), n.FullApi),
@ -501,7 +513,7 @@ func RestoreMiner(t *TestEnvironment, m *LotusMiner) (*LotusMiner, error) {
t.RecordMessage("connected to full node of miner %d on %v", i, fullNetAddrs[i])
}
pm := &LotusMiner{n, minerRepo, nodeRepo, fullNetAddrs, genesisMsg, t}
pm := &LotusMiner{n, minerRepo, nodeRepo, fullNetAddrs, genesisMsg, m.Subsystems, t}
return pm, err
}