package schedule

import (
	"context"
	"os"
	"testing"

	"github.com/stretchr/testify/require"

	"github.com/tidbcloud/AgentTeam/internal/coredb"
	"github.com/tidbcloud/AgentTeam/internal/coredb/testkit"
)

var scheduleTiDB testkit.TiDBCoreDBFixture

func TestMain(m *testing.M) {
	os.Exit(testkit.RunTestsWithTiDBCoreDBFixture(m, "schedule", &scheduleTiDB))
}

func startScheduleRollbackDB(t *testing.T, ctx context.Context) coredb.DB {
	t.Helper()
	return scheduleTiDB.RollbackDB(t, ctx)
}

func mustExec(t testing.TB, execer coredb.QueryExecer, query string, args ...any) {
	t.Helper()
	_, err := execer.Exec(context.Background(), query, args...)
	require.NoError(t, err)
}
