package tiuptikvrel

import (
	"io"
	"time"

	"github.com/pingcap/endless/pkg/workloadnode/tiup"
	"github.com/pingcap/endless/testcase/oltp/oltppkg"
	"github.com/pingcap/endless/testcase/oltp/systemtest/tikvrel"
	"github.com/pingcap/test-infra/sdk/core"
)

func OLTP_TiKV_REL_TiKV_NETWORK_LOSS_100_TIUP(
	ctx core.TestContext,
	tc *tiup.TiUPCluster,
	pr *io.PipeReader,
	caseCmdParms oltppkg.CaseCmdParms,
) {
	tikvRelOptions := &tikvrel.TiKVRelOptions{
		WarmUpTime:    10 * time.Minute,
		FaultType:     "network-loss-loss:100",
		FaultNum:      1,
		FaultDuration: oltppkg.GetRandDuration(time.Minute, 10) + 10*time.Minute,
		RTO:           2 * time.Minute,
		RecoveryTime:  30 * time.Minute,
	}
	tikvRelOptions.TiKVFaultTest(ctx, tc, pr, caseCmdParms)
}
