package common

import (
	"encoding/json"
	"testing"

	models "github.com/tidbcloud/infra-provider/pkg/compat/models"
)

func TestGetGRPCErrorCode(t *testing.T) {
	i, e, o := getGRPCErrorCode(`{"a":"a","b":"b"}`)
	if i != 0 || e != nil || o != false {
		t.Fatal(i, e, o)
	}
	status := models.GooglerpcStatus{
		Code:    -1,
		Message: "error",
	}
	b, err := json.Marshal(status)
	if err != nil {
		t.Fatal(err)
	}
	i, e, o = getGRPCErrorCode(string(b))
	if i != -1 || e.Error() != "error" || o != true {
		t.Fatal(i, e, o)
	}
}
