Merge branch 'raulk/itests-refactor-kit' into nonsense/split-market-miner-processes
This commit is contained in:
commit
fc7feffaad
@ -288,6 +288,7 @@ func startNodes(
|
|||||||
var gapi api.Gateway
|
var gapi api.Gateway
|
||||||
gapi, closer, err = client.NewGatewayRPCV1(ctx, "ws://"+srv.Listener.Addr().String()+"/rpc/v1", nil)
|
gapi, closer, err = client.NewGatewayRPCV1(ctx, "ws://"+srv.Listener.Addr().String()+"/rpc/v1", nil)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
t.Cleanup(closer)
|
||||||
|
|
||||||
ens.FullNode(&lite,
|
ens.FullNode(&lite,
|
||||||
kit.LiteNode(),
|
kit.LiteNode(),
|
||||||
|
@ -255,8 +255,7 @@ func (n *Ensemble) Miner(miner *TestMiner, full *TestFullNode, opts ...NodeOpt)
|
|||||||
|
|
||||||
// Start starts all enrolled nodes.
|
// Start starts all enrolled nodes.
|
||||||
func (n *Ensemble) Start() *Ensemble {
|
func (n *Ensemble) Start() *Ensemble {
|
||||||
ctx, cancel := context.WithCancel(context.Background())
|
ctx := context.Background()
|
||||||
n.t.Cleanup(cancel)
|
|
||||||
|
|
||||||
var gtempl *genesis.Template
|
var gtempl *genesis.Template
|
||||||
if !n.bootstrapped {
|
if !n.bootstrapped {
|
||||||
|
@ -21,15 +21,14 @@ func TestTerminate(t *testing.T) {
|
|||||||
|
|
||||||
kit.QuietMiningLogs()
|
kit.QuietMiningLogs()
|
||||||
|
|
||||||
const blocktime = 2 * time.Millisecond
|
var (
|
||||||
|
blocktime = 2 * time.Millisecond
|
||||||
nSectors := uint64(2)
|
nSectors = 2
|
||||||
|
ctx = context.Background()
|
||||||
ctx, cancel := context.WithCancel(context.Background())
|
)
|
||||||
defer cancel()
|
|
||||||
|
|
||||||
opts := kit.ConstructorOpts(kit.LatestActorsAt(-1))
|
opts := kit.ConstructorOpts(kit.LatestActorsAt(-1))
|
||||||
client, miner, ens := kit.EnsembleMinimal(t, kit.MockProofs(), opts)
|
client, miner, ens := kit.EnsembleMinimal(t, kit.MockProofs(), kit.PresealSectors(nSectors), opts)
|
||||||
ens.InterconnectAll().BeginMining(blocktime)
|
ens.InterconnectAll().BeginMining(blocktime)
|
||||||
|
|
||||||
maddr, err := miner.ActorAddress(ctx)
|
maddr, err := miner.ActorAddress(ctx)
|
||||||
@ -41,7 +40,7 @@ func TestTerminate(t *testing.T) {
|
|||||||
p, err := client.StateMinerPower(ctx, maddr, types.EmptyTSK)
|
p, err := client.StateMinerPower(ctx, maddr, types.EmptyTSK)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, p.MinerPower, p.TotalPower)
|
require.Equal(t, p.MinerPower, p.TotalPower)
|
||||||
require.Equal(t, p.MinerPower.RawBytePower, types.NewInt(uint64(ssz)*nSectors))
|
require.Equal(t, p.MinerPower.RawBytePower, types.NewInt(uint64(ssz)*uint64(nSectors)))
|
||||||
|
|
||||||
t.Log("Seal a sector")
|
t.Log("Seal a sector")
|
||||||
|
|
||||||
@ -54,7 +53,7 @@ func TestTerminate(t *testing.T) {
|
|||||||
di, err := client.StateMinerProvingDeadline(ctx, maddr, types.EmptyTSK)
|
di, err := client.StateMinerProvingDeadline(ctx, maddr, types.EmptyTSK)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
waitUntil := di.PeriodStart + di.WPoStProvingPeriod + 2
|
waitUntil := di.PeriodStart + di.WPoStProvingPeriod + 20 // 20 is some slack for the proof to be submitted + applied
|
||||||
t.Logf("End for head.Height > %d", waitUntil)
|
t.Logf("End for head.Height > %d", waitUntil)
|
||||||
|
|
||||||
ts := client.WaitTillChain(ctx, kit.HeightAtLeast(waitUntil))
|
ts := client.WaitTillChain(ctx, kit.HeightAtLeast(waitUntil))
|
||||||
@ -66,7 +65,7 @@ func TestTerminate(t *testing.T) {
|
|||||||
p, err = client.StateMinerPower(ctx, maddr, types.EmptyTSK)
|
p, err = client.StateMinerPower(ctx, maddr, types.EmptyTSK)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, p.MinerPower, p.TotalPower)
|
require.Equal(t, p.MinerPower, p.TotalPower)
|
||||||
require.Equal(t, p.MinerPower.RawBytePower, types.NewInt(uint64(ssz)*nSectors))
|
require.Equal(t, p.MinerPower.RawBytePower, types.NewInt(uint64(ssz)*uint64(nSectors)))
|
||||||
|
|
||||||
t.Log("Terminate a sector")
|
t.Log("Terminate a sector")
|
||||||
|
|
||||||
@ -113,11 +112,14 @@ loop:
|
|||||||
time.Sleep(100 * time.Millisecond)
|
time.Sleep(100 * time.Millisecond)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// need to wait for message to be mined and applied.
|
||||||
|
time.Sleep(5 * time.Second)
|
||||||
|
|
||||||
// check power decreased
|
// check power decreased
|
||||||
p, err = client.StateMinerPower(ctx, maddr, types.EmptyTSK)
|
p, err = client.StateMinerPower(ctx, maddr, types.EmptyTSK)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, p.MinerPower, p.TotalPower)
|
require.Equal(t, p.MinerPower, p.TotalPower)
|
||||||
require.Equal(t, p.MinerPower.RawBytePower, types.NewInt(uint64(ssz)*(nSectors-1)))
|
require.Equal(t, types.NewInt(uint64(ssz)*uint64(nSectors-1)), p.MinerPower.RawBytePower)
|
||||||
|
|
||||||
// check in terminated set
|
// check in terminated set
|
||||||
{
|
{
|
||||||
@ -138,7 +140,7 @@ loop:
|
|||||||
di, err := client.StateMinerProvingDeadline(ctx, maddr, types.EmptyTSK)
|
di, err := client.StateMinerProvingDeadline(ctx, maddr, types.EmptyTSK)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
waitUntil := di.PeriodStart + di.WPoStProvingPeriod + 2
|
waitUntil := di.PeriodStart + di.WPoStProvingPeriod + 20 // slack like above
|
||||||
t.Logf("End for head.Height > %d", waitUntil)
|
t.Logf("End for head.Height > %d", waitUntil)
|
||||||
ts := client.WaitTillChain(ctx, kit.HeightAtLeast(waitUntil))
|
ts := client.WaitTillChain(ctx, kit.HeightAtLeast(waitUntil))
|
||||||
t.Logf("Now head.Height = %d", ts.Height())
|
t.Logf("Now head.Height = %d", ts.Height())
|
||||||
@ -147,5 +149,5 @@ loop:
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
require.Equal(t, p.MinerPower, p.TotalPower)
|
require.Equal(t, p.MinerPower, p.TotalPower)
|
||||||
require.Equal(t, p.MinerPower.RawBytePower, types.NewInt(uint64(ssz)*(nSectors-1)))
|
require.Equal(t, types.NewInt(uint64(ssz)*uint64(nSectors-1)), p.MinerPower.RawBytePower)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user