package planner

import (
	"errors"
	"os"
	"testing"

	"github.com/joho/godotenv"
	. "github.com/onsi/ginkgo"
	. "github.com/onsi/gomega"
	"github.com/pingcap/endless/pkg/log"
	"github.com/pingcap/test-infra/sdk/core"
	_ "github.com/pingcap/test-infra/sdk/resource/impl/k8s"
)

var (
	suiteTestCtx core.TestContext
)

func init() {
	err := error(nil)
	if err = godotenv.Load(); err != nil {
		if !errors.Is(err, os.ErrNotExist) {
			panic("Load dotenv failed.")
		}
	}
	suiteTestCtx, err = core.BuildContext()
	if err != nil {
		panic("Init test context failed.")
	}
	log.InitLogger(*suiteTestCtx.Logger())
}

func TestFailover(t *testing.T) {
	RegisterFailHandler(Fail)
	RunSpecs(t, "comp tiup test")
}
