package rms

import (
	"os"
	"testing"

	"github.com/joho/godotenv"
	"github.com/stretchr/testify/assert"
	"github.com/tidbcloud/pov-service/internal/model"
	"golang.org/x/net/context"
)

func TestUpdatePremiumClusterRU(t *testing.T) {
	t.Skip("skip test")

	_ = godotenv.Load("./.env")
	thost := os.Getenv("RMS_ADDRESS")
	ttoken := os.Getenv("RMS_TOKEN")

	c := NewClient(thost, ttoken)

	err := c.UpdateTiDBGroupRU(context.Background(), model.TiDBCluster{
		TestbedName: "testbed-pov-gardian-tps-8011312-1-947",
		Type:        model.ClusterTypeTiDBCloudPremium,
	}, 5000, 6000)
	if err != nil {
		t.Fatal(err)
	}
	assert.NoError(t, err)
}

func TestUpdateEssentialClusterRU(t *testing.T) {
	t.Skip("skip test")

	_ = godotenv.Load("./.env")
	thost := os.Getenv("RMS_ADDRESS")
	ttoken := os.Getenv("RMS_TOKEN")

	c := NewClient(thost, ttoken)

	err := c.UpdateTiDBGroupRU(context.Background(), model.TiDBCluster{
		TestbedName: "testbed-tps-8011307-1-544",
		Type:        model.ClusterTypeTiDBCloudEssential,
	}, 5000, 5600)
	if err != nil {
		t.Fatal(err)
	}
	assert.NoError(t, err)
}

func TestInjectTiDBGroupFailure(t *testing.T) {
	t.Skip("skip test")

	_ = godotenv.Load("./.env")
	thost := os.Getenv("RMS_ADDRESS")
	ttoken := os.Getenv("RMS_TOKEN")

	c := NewClient(thost, ttoken)

	err := c.InjectTiDBGroupFailure(context.Background(), model.TiDBCluster{
		TestbedName: "testbed-tps-7980539-1-736",
		Type:        model.ClusterTypeTiDBCloudPremium,
	}, InjectTiDBGroupFailureParams{
		FailureFault: &InjectFailureFaultParams{
			Duration: "1m",
		},
	})
	if err != nil {
		t.Fatal(err)
	}
	assert.NoError(t, err)
}
