package ssb_test

import (
	"context"
	"time"

	. "github.com/onsi/ginkgo"
	_ "github.com/pingcap/test-infra/sdk/resource/impl/k8s"

	"github.com/pingcap/endless/pkg/matcher"
	"github.com/pingcap/endless/testcase/tiflash/pkg/workload/ssb"
)

var _ = Describe("Ssb workload", func() {
	var ssbWorkload *ssb.SSBWorkload
	BeforeEach(func() {
		ssbWorkload = ssb.NewWorkload(suiteTestCtx).(*ssb.SSBWorkload)
		ssbWorkload.Prepare(suiteTestCtx)
	})
	Context("when execute ap query", func() {
		duration := matcher.Try(time.ParseDuration(suiteTestCtx.Param("duration", "2h"))).(time.Duration)
		ctxr, cancel := context.WithTimeout(context.Background(), duration)
		defer cancel()
		It("shouldn't fail", func() {
			matcher.Try(ssbWorkload.RunAP(ctxr, nil))
		})
	})
})
