package nextgen

import (
	"github.com/tidbcloud/observability/test/webconsolee2e/framework"
)

// RegisterNextgenCases registers all test cases for nextgen clusters.
// Old path cases are removed; only gateway(new path) cases are kept.
func RegisterNextgenCases(fw *framework.TestFramework) {
	fw.Register(
		// GetClusterRouteNewPath must run first to get openReadUri values
		NewGetClusterRouteNewPathCase(),
		// MetricsQueryRangeNewPath depends on GetClusterRouteNewPath
		NewMetricsQueryRangeNewPathCase("", 120),
		// SlowLogListNewPath
		NewSlowLogListNewPathCase(),
		// StmtTypesNewPath
		NewStmtTypesNewPathCase(),
		// StmtListNewPath
		NewStmtListNewPathCase(),
		// AlertsListNewPath
		NewAlertsNewPathCase(),
		// MonitorAlertRulesNewPath
		NewMonitorAlertRulesNewPathCase(),
		// MonitorAlertRulesUpdateNewPath depends on MonitorAlertRulesNewPath
		NewMonitorAlertRulesUpdateNewPathCase(),
	)
}

// RegisterNextgenCasesWithNewPath keeps backward-compatible API and now
// registers the same gateway(new path)-only nextgen cases.
func RegisterNextgenCasesWithNewPath(fw *framework.TestFramework) {
	RegisterNextgenCases(fw)
}
